-1
<script type="text/javascript" >
$(document).ready(function()
{
$(".comment").click(function(){

var element = $(this);
var id = element.attr("post_id");

$("#"+id).html('<form action="test.php" method="post"><textarea name="body" id="body_'+id+'"></textarea></form>');  

$("#body_"+id).focus();

return false;   

});
});

<a href="#" post_id="17" class="comment">Open</a>
<div id="17"></div>

为什么每次在 textarea 中输入内容并单击 .comment 链接后,textarea 的值变为空白,我应该如何保持我输入的内容不被删除?

4

2 回答 2

0

您需要防止链接的默认行为,否则页面会重新加载:

$(".comment").click(function(e){
    e.preventDefault();
    ...
});
于 2013-06-18T14:13:51.143 回答
0

您正在用这一行覆盖 div 内的任何 html...

$("#"+id).html('<form action="test.php" method="post"><textarea name="body" id="body_'+id+'"></textarea></form>');

尝试将其更改为:

var textArea = $("#body_"+id);
var textAreaValue = textArea.length > 0 ? textArea.val() : '';
$("#"+id).html('<form action="test.php" method="post"><textarea name="body" id="body_'+id+'">'+textAreaValue+'</textarea></form>');
于 2013-06-18T14:34:28.997 回答