我有多个名为Change[xxx]
的输入字段。最初的方式是单击更新按钮时,它通常会发送数据并更新数据库。但是,如果我使用Ajax,如何传递此Change[xxx]
数据?我想这样做没有 jQuery。
HTML:
<input type='text' name='Change[name]' value='Bob' onblur='updateField($id)'></input>
在PHP中检索信息:
foreach($_POST['Change'] as $field => $value) {
if($field == 'name') {
// update database
}
}
JavaScript:
使用request.send(...)
,我不知道如何发送数据。
function updateField(id) {
…
var url = 'orders.php?id='+ id;
request.open('POST', url, true);
request.setRequestHeader("Content-type","application/x-www-form-urlencoded");
var val = document.getElementsByName("Change[name]")[0].value;
request.send("id=" + id + "&Change[" + val + "]");
…
}
答案 0 :(得分:1)
与通常情况完全相同:
request.send("id=" + id + "&Change[name]=" + encodeURIComponent(val));
括号不是HTTP特有的,只有PHP。