我在页面上有一个复选框。我希望该复选框能够使用它的值提交给服务器,例如:/PageName?cb=true
或/PageName?cb=1
,但由于某种原因,它只会转到/PageName?
。我在这里做错了什么?
形式:
<form action="/PageName" id="cbForm" method="get">
<input type="checkbox" id="cb">
</form>
JS:
<script>
$(function () {
$("#cb").change(
function () {
$("#cbForm").submit();
}
)
});
</script>
答案 0 :(得分:1)
简短的回答是:
<input type="checkbox" id="cb">
应包含“name”属性。
<input type="checkbox" id="cb" name="cb">
name属性用于表示要发送的请求参数。你仍然需要id在jQuery中使用输入。
答案 1 :(得分:1)
您缺少名称属性
您也可以使用 onchange
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="/PageName" id="cbForm" method="get">
<input type="checkbox" id="cb" name="cb" onchange='$("#cbForm").submit();'>
</form>
&#13;
快乐编码:)
答案 2 :(得分:0)
尝试这样,我搜索每一个我可以找到你的查询附近的任何东西,所以我尝试了这样的不同方式。在表格提交时改变行动。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
$(function () {
$("#cb").change(
function () {
var n=$("#cbForm").attr('action');
var cb=$("#cb").val();
$("#cbForm").attr('action',n+'?cb='+cb)
$("#cbForm").submit();
alert($("#cbForm").attr('action'));
}
)
});
</script>
<form action="/PageName" id="cbForm" method="get">
<input type="checkbox" id="cb" name=cb value=1>
</form>
&#13;