我有一个小表单,我希望在我的选择框的更改时更新值,可以通过以下方式完成:
$("form#updateclient select").change(function(){ // use one selector for all 3 selects
$.post("inc/process-update.php",{
// data to send
completed: $("select#completed").val(),
hours: $("select#hours").val(),
update_id: $("#u_id").val(),
who: $("select#who").val()
}, function(data) {
// do callback stuff with the server response 'data' here
});
});
但是我有一个输入文本字段,用户可以输入小时数,当他们点击开箱即可将该AJAX请求发送到PHP页面时。
#completed字段现在是一个复选框,是否传递相同的输入?如何使用jQuery,所以如果你选中或取消选中发送该信息并更新数据库
我现在一直在努力研究的是从服务器检索这些值并使用AJAX在页面上更新它们的最佳方法。所以,一旦我更新我的下拉列表,它将保持相同的结果。
有什么想法吗?
答案 0 :(得分:1)
#completed字段现在是一个复选框,是否传递了相同的输入?
没有。复选框的.value(由jQuery的val()方法使用)始终是value =“...”属性中的字符串(如果省略则默认为“on”),无论是否勾选。要获得复选框的有效值,您需要查看“.checked”属性。例如
var v= element.checked? element.value : '';
此外,您不能使用onchange处理程序来检测何时更改复选框,因为IE不会触发该事件。相反,您必须对该元素使用onclick。