我有这个代码,它的作用是它附加用户放入聊天框输入的内容。它完成了这项工作,但之后也附加了空值。我该如何阻止它?
function updateChat() {
$("div#chatmessages").append("<div>" + $("#message").val() + "</div>");
}
var elem = $('#message');
// Save current value of element
elem.data('oldVal', elem.val());
// Look for changes in the value
elem.bind("propertychange change click keyup input paste", function(event){
// If value has changed...
if (elem.data('oldVal') != elem.val()) {
// Updated stored value
elem.data('oldVal', elem.val());
$("#userSubmitTxt").click(function(){
console.log($('#message').val());
$("#chatmessages").append("<div>Me:" + $('#message').val() + "</div>");
$("#chatmessages").scrollTop($("#chatmessages")[0].scrollHeight);
if(elem.val().search(/nothing/i) >= 0){
console.log("Nothing");
$("#chatmessages").append("<div>Linodo: Well, for starters, have you thought about the SAT?</div>");
}
$('#message').val("");
});
}
else {
return false;
}
});
答案 0 :(得分:0)
这是因为您的侦听器会侦听每个更改。包括将消息设置为“”
在你的if条款中,请添加
if( elem.data('oldVal') != elem.val() || $('#message').val() != "")