我已经有一段时间了。由于某种原因,我的密码字段没有通过ajax到达我的editaccount.php。如果未禁用pass,请确认Jquery是否正确设置以将传递添加到要发送的变量。我想确认所有其他字段是否发送。
似乎没有人知道对此的修复。如果在控制台中使用alert()检查此if语句,那么它应该可以正常工作。但是传递永远不会放入对象myData中。为什么?我怎样才能解决这个问题?我知道密码选择是正确的。如果我删除if语句,那么传递将被删除。
JQuery的:
$(document).on('submit', '#editaccount', function(event) {
event.preventDefault();
myData = {
contactname: $('input[name=contactname]').val(),
business: $('input[name=business]').val(),
email: $('input[name=email]').val(),
code: $('input[name=code]').val(),
phone: $('input[name=phone]').val(),
priceband: $('input[name=priceband]').val(),
address: $('input[name=address]').val(),
active: $('input[name=active]').val(),
mon: $('input[name=mon]').val(),
tue: $('input[name=tue]').val(),
wed: $('input[name=wed]').val(),
thu: $('input[name=thu]').val(),
fri: $('input[name=fri]').val(),
sat: $('input[name=sat]').val(),
sund: $('input[name=sund]').val(),
adminname: $('input[name=adminname]').val(),
accountid: $('input[name=accountid]').val(),
isadmin: $('input[name=isadmin]').val(),
};
var isDisabled = $('input[name=pass]').is(':disabled');
if (isDisabled == false) {
myData.pass = $('input[name=pass]').val();
}
$.ajax({
url: 'php/editaccount.php',
type: "POST",
data: myData,
success: function(data) {
if ($('input[name=isadmin]').val() == 1) {
$('input[name=accountsearch]').val($('input[name=email]').val());
$('input[name=accountsearch]').submit();
} else {
$('input[name=accountsearch]').val($('input[name=business]').val());
$('input[name=accountsearch]').submit();
}
alert(data);
}
});
});
答案 0 :(得分:0)
我认为如果禁用你需要使用.push(),这样你就可以阅读myData.pass
var isDisabled = $('input[name=pass]').is(':disabled');
if (isDisabled == false) {
myData.push('pass : '+$('input[name=pass]').val());
alert(myData.pass);
}
答案 1 :(得分:0)
此代码的问题在于,如果isDisabled = false,则联机创建myData.pass变量,否则对象永远不会创建对象的传递变量,这里是解决方案:
{{1}}
这是完整的代码:
{{1}}