div内容在显示后消失

时间:2011-08-17 20:04:46

标签: jquery html

我开始在我的网络应用程序中编写聊天功能。我想要的是在用户点击发送按钮后,他们发短信的内容会立即显示在聊天div中。

我使用jQuery来执行此功能,但是,我发现在显示内容后,它会立即消失。我错过了什么吗?

<script type="text/javascript">
    function Send() {

        var original = $('#contentDIV').html();
        var text = $("[id$='TextBox1']").val();
        $('#contentDIV').html(original + "<br />" + text);
    }
</script>


<div id="contentDIV" style="height:400px;overflow:auto">

</div>

<input name="TextBox1" type="text" id="TextBox1" style="width:400px;" />


<input type="button" name="Button1" value="Button" onclick="Send();__doPostBack('Button1','')" id="Button1" />

4 个答案:

答案 0 :(得分:1)

这似乎有效。我让JS无阻碍。

http://jsfiddle.net/eTRRP/

$("#chat").click(function() {
  Send();
}); 

function Send() {   
  var text = $("#TextBox1").val();
  $('#contentDIV').append(text + "<br />");
}
<div id="contentDIV" style="height:400px;overflow:auto">
</div>

<input name="TextBox1" type="text" id="TextBox1" style="width:400px;" />
<input type="button" name="Button1" value="Button" id="chat" />

听起来好像你的ASP助手有问题:)

答案 1 :(得分:0)

var original = $('#contentDIV')。html();应该做的但你也可以使用追加:

$('#contentDIV').append("<br />" + text);

答案 2 :(得分:0)

应该是

    var original = $('#contentDIV').html();
    var text = $("[id$='TextBox1']").val();
    $('#contentDIV').html(original + "<br />" + text);

    var text = $("[id$='TextBox1']").val();
    $('#contentDIV').append("<br />" + text);

答案 3 :(得分:0)

您的__doPostBack('Button1','')功能可能会刷新页面,因此您将丢失刚刚进行的所有客户端更改。