我尝试在 html 和 javascript 中创建的表单有问题
首先我想有多个复选框
如果选中一项,则在提交时将用户带到一个 url
如果选中两个框,则在提交时将用户带到另一个 url 等。
这可能吗?如果可以,javascript 或 jquery 会是什么??????
我尝试在 html 和 javascript 中创建的表单有问题
首先我想有多个复选框
如果选中一项,则在提交时将用户带到一个 url
如果选中两个框,则在提交时将用户带到另一个 url 等。
这可能吗?如果可以,javascript 或 jquery 会是什么??????
一些代码会很好,因为我不知道您使用什么机制来提交表单,但解决方案很可能涉及以下内容:
switch ($('form input:checkbox:checked').length)
{
case 1:
window.location.href = url1;
break;
case 2:
window.location.href = url2;
break;
//etc
default:
}
编辑:好的,我必须感谢 Valentin,所以让我们结合解决方案。
var $myForm = document.getElementById('myForm');
$('#myForm input:checkbox').on('change', function(event){
switch ($('#myForm input:checkbox:checked').length)
{
case 1:
$myForm.action = url1;
break;
case 2:
$myForm.action = url2;
break;
//etc
default:
}
});
我会说您可以使用onCheck
和onUnCheck
复选框,并让他们将表单的操作属性修改为用户应该进入的任何页面。
所以你的 HTML 可能是:
<form method="post" action="whateverpage.php" id="myform">
<input type="checkbox" id="check0"/>
<input type="checkbox" id="check1"/>
<input type="submit" value="Submit" />
</form>
还有你的 javascript:
yourform=document.getElementById("myform");
checkbox0=document.getElementById("check0");
checkbox1=document.getElementById("check1");
checkbox0.onCheck=function(){
if(checkbox1.checked==true){
yourform.action="bothchecked.php";
}else{
yourform.action="firstchecked.php";
}
}
checkbox1.onCheck=function(){
if(checkbox0.checked==true){
yourform.action="bothchecked.php";
}else{
yourform.action="secondchecked.php";
}
}
checkbox1.onUnCheck=function(){
if(checkbox0.checked==true){
yourform.action="firstchecked.php";
}else{
yourform.action="nonechecked.php";
}
}
checkbox0.onUnCheck=function(){
if(checkbox1.checked==true){
yourform.action="secondchecked.php";
}else{
yourform.action="nonechecked.php";
}
}
当然你也可以yourform.setAttribute("action","page.php");
替代使用。