页面刷新以及动态获取控件名的问题

SDQDboy 2009-09-07 08:25:37
问题一:页面刷新
我做了一个页面,在页面中用Java Script做判断,页面上的选项都要做选择,如果有没有填写的项目就要给出提示,
我用下面的方法当用户有一项没有填写时就会给出提示,但是问题是,alert提示确定后页面就自动刷新了,
所有的选项又要重新填写,请问用什么办法能不刷新页面。

<script language="javascript">
function checkform(){
var theform = document.form1;
var icount = theform.hiddenField.value;
var checkOK = false;

for(i=1; i<=icount; i++){
var theitem = eval("theform.h_QuestionType" + i.toString());

if (theitem.value==3){
//alert("问答题");
var thetextfield = eval("theform.textfield" + i.toString());
if(thetextfield.value==""){
alert("第" + i.toString() + "题,您还没有做选择!");
return false;
} else{ checkOK = true;}
}
}
if(checkOK){theform.action = "QList.php?id=1";}
}
</script>

<form name="form1" method="post" action="">

<input type="submit" name="Submit" value="提交" onClick="checkform()">

</form>





问题二:动态获取控件名
我的页面上的控件都是通过循环输出显示控件的,
例如:

for ($i=0; $i<$array_count; $ii++){
echo "<input type='radio' name='radiobutton_".$i."' value='".$Q_array[$ii]."'>".$Q_array[$ii];
}


当我在提交数据库的时候如何通过循环获取到每一个控件的值,
java script可以用var theitem = eval("theform.h_QuestionType" + i.toString());这个方法组合出一个控件名并取值,
请问PHP用什么方法可以动态的通过组合的方式组合出控件名并取值。

请大家帮忙,谢谢了!
...全文
98 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
SDQDboy 2009-09-07
  • 打赏
  • 举报
回复
谢谢两位
LuciferStar 2009-09-07
  • 打赏
  • 举报
回复
表单提交不对
<form onsubmit="return checkform();">
<input type=submit>
</form>
checkform里,正确则return true,否则return false;
这样就能保证没填写完就不提交。
dzxccsu 2009-09-07
  • 打赏
  • 举报
回复
1.加history.back(-1);

function checkform(){
var theform = document.form1;
var icount = theform.hiddenField.value;
var checkOK = false;

for(i=1; i<=icount; i++){
var theitem = eval("theform.h_QuestionType" + i.toString());

if (theitem.value==3){
//alert("问答题");
var thetextfield = eval("theform.textfield" + i.toString());
if(thetextfield.value==""){
alert("第" + i.toString() + "题,您还没有做选择!");
history.back(-1);//就加这里了
return false;
} else{ checkOK = true;}
}
}
if(checkOK){theform.action = "QList.php?id=1";}
}



2.php取数组控件的值,最好把name形式改一下

for ($i=0; $i<$array_count; $ii++){ echo "<input type='radio' name='radiobutton[".$i."]' value='".$Q_array[$ii]."'>".$Q_array[$ii]; }

下面是php获取值

print_r($_POST['radiobutton']);//打印出来是个数组
$arr=array_values($_POST['radiobutton']);
for($j=0;$j<count($arr);$j++){
echo $arr[$j]."<br>";
}

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧