我尝试使用jquery执行动态加载的表单时遇到了一些问题。这是我的代码:
$(this).ajaxSubmit({
url: '/postform1.php',
type: 'post',
//target: '#preview',
success: function(msg) {
var s = msg + '<form name="sr" id="sr" action="postform.php" method="post"><input type="text" /></form>';
$('#preview').html(s);
$.getJSON("/postform1.php", function(data){
var counter = 0;
if(data) {
$.each(data, function(i, val) {
var newTextBoxDiv = $(document.createElement('div')).attr("id", val);
newTextBoxDiv.after().html('<label>' + i + ' : </label>' + '<input type="text" name="' + i + '" id="' + i + '" value="' + val + '" >');
newTextBoxDiv.appendTo("#sr");
counter++;
});
}
});
}
});
我最初是从postform1.php回显整个表单,但发现表单没有提交。我不知道这是否是正确的方式,但我想我试一试。如果有人有任何想法,你会听到很高兴。
答案 0 :(得分:0)
您错过了宣布:
contentType: " ... ",
dataType: " ... "
答案 1 :(得分:0)
感谢您对此进行调查,并设法对其进行排序。我也改变了这个:
var newTextBoxDiv = $(document.createElement('div')).attr("id", val);
newTextBoxDiv.after().html('<label>' + i + ' : </label>' + '<input type="text" name="' + i + '" id="' + i + '" value="' + val + '" >');
newTextBoxDiv.appendTo("#sr");
counter++;
到此:
var newTextBoxDiv = $(document.createElement('div')).attr("id", val);
newTextBoxDiv.html('<label>' + i + ' : </label>' + '<input type="text" name="' + i + '" id="' + i + '" value="' + val + '" >');
newTextBoxDiv.appendTo(".sr");
counter++;