我有一个加载到灯箱面板的表单和来自php脚本的json响应。 所以我试图从形式的字段中加载json的数据,但没有任何反应。既不是错误也不是结果。
以下是一些代码:
形式:
<form id="FORM" name="newUserForm">
<br>
<label for="username" style="padding-right:35px;">Username: </label>
<input type="text" name="username" id="username" value="" style="margin-right:35px;">
<label for="email" style="padding-right:35px;">Email: </label>
<input type="text" id = "email" name="email" value="" ><br><br>
<label for="password" style="padding-right:40px;">Password: </label>
<input type="password" id="password" name="password"><br><br>
<label for="repeatpassword">Repeat Password: </label>
<input type="password" name="repeatPassword" style="margin-right:35px;">
<label for="submitBt" id="submitEditUser" style="background-color:black;color:white;font-weight:bold;padding:4px 4px 4px 4px;">Submit</label>
</form>
使用Javascript:
var user = user_id;
jQuery.ajax({
type: "POST",
async : false,
url: "/op/controller.php",
data: { method: "editUser", user_id: user },
contentType : ('application/x-www-form-urlencoded'),
dataType : "json" ,
success : function(json){
$('#lightbox-background').fadeIn(300);
$('#lightbox-panel').fadeIn(300).load('forms/editUserForm.php');
$('#username').val = json.username;
}
});
我也尝试过getElementById并填充但没有任何反应。
有什么想法存在这个问题吗?也许是因为灯箱?
另外我想说的是html表单存在于forms / editUserForm.php文件中。
感谢。
答案 0 :(得分:0)
您需要将最后一个命令放在load()的回调中,并且#username的新值必须作为val()中的参数传递,如下所示
var user = user_id;
jQuery.ajax({
type: "POST",
async : false,
url: "/op/controller.php",
data: { method: "editUser", user_id: user },
contentType : ('application/x-www-form-urlencoded'),
dataType : "json" ,
success : function(json){
$('#lightbox-background').fadeIn(300);
$('#lightbox-panel').fadeIn(300).load('forms/editUserForm.php', function(){
$('#username').val(json.username);
});
}
});