如何使用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()但我一直收到错误消息。
答案 0 :(得分:1)
$(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>");
});