我有一个例如。
的表格HTML
<form id="data">
<input id="hostname" type="text" name="hostname" value="" />
</form>
我有一些javascript可以为no添加更多字段。我有朋友。
注意:我会避免添加一些fb api脚本来节省我的写作时间。如果您希望我重新编辑并添加注释,请添加注释。
JAVASCRIPT
<script>
//load fb api
//authenticate with permissions {scope: email,friends_birthday,users_birthday}
FB.api('/me/friends?fields=id,name,birthday',function (friendsdata) {
for (var i = 0; i < friendsdata.data.length; i++) {
$('#hostname').after('<input type="text" name="hostid[]" value="'+friendsdata.data[i].id+'" />');
}
$.ajax({
type: "GET",
url: "php/send.php",
data: $("#data").serializeArray(),
success: function(send) {
console.log(send);
}
});
})
</script>
PHP
$hostid = $_GET['hostid'];
print_r($hostid); // returns nothing if input field is generated using jquery after
以上工作完美无缺。它检索数据并插入到字段中。 但问题是当我试图通过使用序列化数组的ajax将这些数据发布到php文件时。
由于动态生成输入字段,我无法在php中收到ids数组。
如果我只是手动添加id字段,它可以正常工作。
任何建议或解决方案?
EDITS
Arun请求的Ajax保存方法。
此致 道尔顿。
答案 0 :(得分:1)
而不是 -
data: $("#data").serializeArray(),
使用此 -
data: { hostid: $("#data").serializeArray()},
答案 1 :(得分:1)
而不是使用
data: $("#data").serializeArray()
您可以获取
等数据// which will return a array.
var result = $("input[name=hostid]").val();
// you can then serialize that array and pass to php
data:result.serializeArray()enter code here