2015-05-12 36 views
0

在我的JavaScript文件中,我创建了2个事件; 键入并单击;keydown事件删除我的div内容

当您单击按钮或按Enter时,输入字段中写入的文本显示在div文本区域中;此代码适用于按钮单击事件,但在按键事件中无法正常工作。

HTML代码:

<div id="chatarea"> 
    <div id="jqarea"> 
    <div class="chatboxcontent"></div>      
    </div> 
</div> 
<div class="chatbox">     
    <input type="hidden" name="cfrom" id="cfrom" value="<?php echo $cuser; ?>" ></input> 
    <p><input type="text" name="digit" id="digit" size="50"/></p>    
    <p><button class="btn" title="send" type="button">      
    <span>Send</span> 
     </button> 
    </p>          
</div>   

Javascript代码

$("#digit").keydown(function(event){ 
     if (event.which == 13) {     
      filltxtarea($("#digit").val());   
     } 
}); 

$(".btn").click(function(){  
    filltxtarea($("#digit").val());    
}); 

function filltxtarea(desctext) {  
    var uchat = $("#cfrom").val();  
    //$(".chatboxcontent").append('<div class=chatboxmessage><span class="chatboxmessagefrom">' + uchat + ': </span><span class="chatboxmessagecontent">' + desctext + '</span></div>');   
    $('#digit').val(''); 
    $('#digit').focus();   
    $.post('chat.php','action=newrow&message='+desctext,function(data){ 
     if (data==='failed'){alert("error in mysqli")}; 
    });  
} 
}); 
function chatHeartbeat(){    
$.ajax({   
url: 'chat.php?action=chatheartbeat',  
dataType: 'json', 
cache: false, 
success: function(data) {      
    alert("0"); 
    $.each(data.items, function(i,item){    
     if(item){  
      alert("1"); 
      $(".chatboxcontent").append('<div class=chatboxmessage><span class="chatboxmessagefrom">'+item.f+': </span><span class="chatboxmessagecontent">'+item.m+'</span></div>'); 
     } 
    });     
} 
}); 
setTimeout('chatHeartbeat();',1000); 
} 

当我使用click什么工作,我可以看到警报(1)和警报(2),但键下它创建在数据库新行,但我只有警报(0)....这怎么可能?任何想法????

+1

''是自闭=>'' – Mark

+0

您的权利.. ..谢谢 – Fabio

回答

1

你有没有尝试阻止默认情况下,有时与回车键,你可以有不必要的行为:

$("#digit").keydown(function(event) { 
    if (event.which == 13) { 
     event.preventDefault(); 
     filltxtarea($("#digit").val()); 
    } 
}); 
+1

哦,我的上帝....你救了我的生命...现在的作品!完美...谢谢你! – Fabio