我有一个隐藏的表单字段:
<input type=hidden id=blah1 value=true />
我有邻居,点击后我做:
$("#b1").bind("click", function(){
$("#blah1").attr("value", "false");
});
但是当我在服务器端获得表单值时,它是'true'。
我做错了吗?
我甚至做到了这一点:
e.preventDefault();
$("#blah1").attr("value", "false");
alert( $("#blah1").attr("value") );
它警告了值'false'。
答案 0 :(得分:3)
即使没有名字&#39;属性,您将值设置为&#34; false&#34;就像在字符串中一样,非空字符串将每次都返回true。
$("#blah1").attr("value", "false");
应该是
$("#blah1").attr("value", false);
答案 1 :(得分:2)
您确实在实际代码中包含了“名称”属性,没有?
<input type=hidden id=blah1 value=true name=blah1 />
这仍然无法解释为什么在服务器端看到“true”。如果您在隐藏字段中包含“name”属性,请发布服务器端代码。
添加“name”属性后,运行您在此处发布的代码,可以获得预期的“假”结果。