jQuery创建的元素无法通过post发送

时间:2013-02-18 23:18:26

标签: javascript jquery

我在表单中动态创建带有值的文本输入。我可以看到新的输入,但每次我通过ajax将它发送到我的php文件时,它都不会获得新创建的输入。

将输入放入一个表格中。

我尝试使用javascript和jQuery,但是两个示例不使用相同的数据,因为javascript方式仅用于测试目的

Javascript方式

var input = document.createElement("input");
input.setAttribute("type","text");
input.setAttribute("name","moi");
input.setAttribute("disabled","disabled");
input.setAttribute("value","HEY");

$('#actor_form').append(input);

jquery方式

var r_name = "<td>" + "<input type='text' name='role[]' disabled value=" +$('#role_name').val()+ " ></td>" ;
var a_name = "<td>" + "<input type='text' name='name[]' disabled value=" +$('#actor_list').val()+  "></td>";
var r_gender = "<td>" + "<input type='text' name='gender[]' disabled value=" +$('#role_gender').val()+"></td>";
var tr = a_name + r_name  + r_gender;

$('#actor_table').append("<tr>"+tr +"</tr>");

发送数据

$.post("assign_roles.php",   $("#actor_form").serialize()  ,function(data){
    alert(data);
}); 

PHP文件

echo $_POST['element']; 

1 个答案:

答案 0 :(得分:3)

输入被禁用,因此它们不会被包含在序列化数据中。

参考:http://api.jquery.com/serialize/

  

&#34;注意:只有&#34;成功控制&#34;被序列化为字符串。&#34;

参考:http://www.w3.org/TR/html401/interact/forms.html#h-17.13.2

  

&#34;禁用的控件无法成功。&#34;