我在我的網站上運行jQuery的聊天。但是,問題是在IE9上,當用戶在輸入文本字段上按Enter時,它會提交兩次。我假設它可能認爲它也必須點擊按鈕?多個jQuery函數?
任何幫助?
<script>
$('#message').keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13')
{
sendPostMessage();
}
});
$('#sendMessage').click(function(event){
if(this.disabled == true)
{
alert('meh');
}
var toSend = $('#message').val();
if(toSend.length > 1 && toSend.length < 160)
{
sendPostMessage();
//alert('You are sending a message.' + toSend);
}
else
{
alert('Invalid message.');
this.disabled = true;
window.setTimeout(function(){
$('#sendMessage').removeAttr('disabled');
}, 3000);
}
});
jQuery.fn.compare = function(t) {
if(this.length != t.length)
{
return false;
}
var a = this.sort(), b = t.sort();
for(var i = 0; t[i]; i++)
{
if(a[i] !== b[i])
{
return false;
}
}
return true;
};
function sendPostMessage()
{
$.post("http://www.prizetv.org/alpha/ajax.php", { "message": $('#message').val() }, function(data) {
//alert(data);
$('#message').val('');
}
);
}
var oldMessages;
var temp;
var scroll;
$(document).ready(function() {update();});
function update() {
$.getJSON("http://www.prizetv.org/alpha/ajax.php", function(json) {
$("#actual").empty();
jQuery.each(json, function(i, val) {
var test = val[0] + " <b>" + val[1] + "</b>: " + val[2] + "<br />";
$("#actual").append(test);
});
$("#actual").scrollTop(0);
});
setTimeout(update, 1000);
}
</script>
我可以在任何地方添加嗎? – Flipper
這樣做,如果用戶按下「Enter」鍵。 – SLaks