【发布时间】:2014-10-29 04:20:39
【问题描述】:
我想在通过 jQuery AJAX post submit 提交评论后清空或清除输入字段。这是我正在使用的 jQuery 代码;
$(".textbox2").on('keypress', function (e) {
if (e.keyCode == 13 && !e.shiftKey) {
e.preventDefault();
var message = $("#message").val(),
privateid = $("#private");
if (message == '') {
alert("Message is missing!!");
return;
}
if (privateid.is(':checked')) {
var privateidVal = privateid.val();
}
$.ajax({
type: "post",
dataType: "json",
url: "shout.php",
data: "message=" +
encodeURIComponent(message) +
"&private=" +
encodeURIComponent(privateidVal) +
"&action=addcomment",
success: function (data) {
showComment();
document.getElementById('message').value = '';
document.getElementById('message').focus();
document.getElementById('private').checked = '';
if (data.error) {
alert(data.error);
}
}
});
}
});
输入字段:
<input type="text" class="textbox2" size="90" maxlength="200" name="message" id="message" autocomplete="off" style="width: 90%;">
问题是,它在 Chrome 中清除,但在 Safari 和 Firefox 浏览器中没有。可能是什么原因?请帮忙!
【问题讨论】:
-
您是否可能有多个 id 为 "message" 的元素?
-
不在同一页面上。我只是在那个页面上有提到的输入字段。
-
您是否尝试过设置断点并单步执行代码?
-
看看 FireFox 中的 Firebug。
标签: jquery ajax google-chrome firefox safari