Jquery表单字段值

时间:2010-03-05 19:11:25

标签: jquery html

如何使用Jquery将此HTML FORM中的HTML字符串<br>传递给DIV?

HTML表格是:

<form action="" id="submit_wall" name="submit_wall" method="post">
<textarea cols="50" rows="5" id="message_wall"></textarea>
<button type="submit" id="fst" class="cfst">send</button>
</form>

 <div id="wall"></div>
 <div class="msg"></div>

Jquery代码:

$(document).ready(function(){    
$("form#submit_wall").submit(function() {
var message_wall = $('#message_wall').attr('value');

$("div#wall").append('<div class=msg>'+ message_wall +'</div>');
return false; 
});
});

我正在尝试使用.html()但我一直收到错误消息。

2 个答案:

答案 0 :(得分:1)

以下是learningjquery.com

的示例
$(document).ready(function() {
  $('#comment').one('focus',function() {
 $('#comment').parent().after('<div id="preview-box"><div class="comment-by">Live Comment Preview</div><div id="live-preview"></div></div>');
  });
  var $comment = ''; // that's two single quotation-marks at the end
  $('#comment').keyup(function() {
 $comment = $(this).val();
 $comment = $comment.replace(/\n/g, "<br />").replace(/\n\n+/g, '<br /><br />').replace(/(<\/?)script/g,"$1noscript");
 $('#live-preview').html( $comment );
  });
});

这与你要做的事情非常接近。

答案 1 :(得分:0)

首先,正如durilai所评论的,没有div ID为wall,这意味着即使您的提交处理程序正常运行,append不会附加,因为没有什么可追加的。

第二次,即使您在表单上说action="",表单仍会提交并导致页面重新加载,因为您没有阻止提交处理程序中的默认操作。一个快速解决方法是添加return false;作为处理程序的最后一行。另一个解决方法是重写它:

$("form#submit_wall").submit(function(event) {
    event.preventDefault();

    $("div#wall").append("<div class='msg'>"+ $("#message_wall").val() + "</div>");
});