如何更改此功能,以便在用户选中框后执行此功能,而不是单击按钮?此外,如果取消选中,则会执行另一个函数。
$("#saveData")
.click(function (e) {
e.preventDefault();
localStorage.setItem("flag", "set");
var data = $("#form1").serializeArray();
$.each(data, function (i, obj) {
if (obj.name != "creditCard") {
localStorage.setItem(obj.name, obj.value);
}
});
});
这是输入字段,
<input id="saveAddress" type="checkbox" name="address">Save Address
答案 0 :(得分:2)
嗯,我在这里的信息是一些基本准则:
$('#checkbox_element').change(function(){
if(this.checked){
//checkbox checked, do your thing
}else{
//it has been unchecked
}
});
JSFiddle示例:http://jsfiddle.net/uHEhh/1/
答案 1 :(得分:1)
将$("#saveData").click
更改为$("#saveAddress").click
,因此您可以获得以下内容:
$("#saveAddress")
.click(function (e) {
e.preventDefault();
localStorage.setItem("flag", "set");
var data = $("#form1").serializeArray();
$.each(data, function (i, obj) {
if (obj.name != "creditCard") {
localStorage.setItem(obj.name, obj.value);
}
});
});
(也可以在事件处理程序中使用$(this).(':checked')
执行检查/取消选中的不同操作)
答案 2 :(得分:1)
你可以这样做:
$("#saveAddress").click(function(e) {
if($(this).prop("checked")) {
localStorage.setItem("flag", "set");
var data = $("#form1").serializeArray();
$.each(data, function(i, obj) {
if(obj.name != "creditCard") {
localStorage.setItem(obj.name, obj.value);
}
});
} else {
/*Other function code*/
}
});