我有一个表单:<form id="form" action="updatescore.php" method="post">
和一个php文件:updatescore.php
,其中包含使用表单中的输入值更新数据库的代码。这一切都适用于使用提交按钮。
现在我想删除提交按钮并在javascript语句为真时提交表单。
js代码部分是:
if (document.getElementById('uhs').innerHTML > 0) { //this is true because the div gone is hidden
$('#gone').hide();
$.ajax({
type: "POST",
data: $("#form").serialize(),
cache: false,
url: "updatescore.php",
success: function () { //if submit to db is done
getUsers(1); //a function to reload a page overview
}
});
}
但如果语句为true且数据库未更新,则没有任何反应。关于这个的任何想法?
亲切的问候,
答案 0 :(得分:0)
你确定条件是真的吗?
if (document.getElementById('uhs').innerHTML > 0) { //this is true because the div gone is hidden
alert('its true');
这也不对:
if (document.getElementById('uhs').innerHTML > 0)
也许:
if (document.getElementById('uhs').innerHTML.length > 0)
或:
if ($('#gone')[0].style.display=="none") {
答案 1 :(得分:0)
提交按钮是触发运行代码的事件的原因:
$('#gone').hide();
$.ajax({
type: "POST",
data: $("#form").serialize(),
cache: false,
url: "updatescore.php",
success: function () { //if submit to db is done
getUsers(1); //a function to reload a page overview
}
});
document.getElementById('uhs')。innerHTML&gt; 0不是事件,因此无法运行您的代码。
试试这个......
document.addEventListener('keyup', function (e) {
//
if (document.getElementById('uhs').innerHTML > 0) {
$('#gone').hide();
$.ajax({
type: "POST",
data: $("#form").serialize(),
cache: false,
url: "updatescore.php",
success: function () { //if submit to db is done
getUsers(1); //a function to reload a page overview
}
});
}
});
答案 2 :(得分:0)
感谢您的回复。代码工作正常,但似乎代码的另一部分中的错误正在搞乱AJAX调用。所以最后代码完全没有问题。
再次感谢回复和建议!