我有一个表格,例如
HTML
<form id="data">
<input id="hostname" type="text" name="hostname" value="" />
</form>
我有一些javascript,它为我的朋友数量添加了更多的字段。
注意:为了节省写作时间,我将避免添加一些fbapi脚本。如果你想让我重新编辑并添加,请添加评论。
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中接收id数组。
如果我只是手动添加id字段,它就可以正常工作。
有什么建议或解决方案吗?
编辑
Arun请求的Ajax保存方法。
谨致问候,道尔顿。
而不是-
data: $("#data").serializeArray(),
使用此-
data: { hostid: $("#data").serializeArray()},
而不是使用
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