我正在使用此功能,在后台提交表单,并附带自定义消息。除了textarea字段外,它完美无缺。我已经读过序列化函数与ex有问题。换行符。
$(function() {
$("#comment_form").validate({ submitHandler: function(form) {
$.post('/u/r/l/', $("#comment_form").serialize(),
function(data) {
$('#comment_container').html(data);
});
}
});
textarea是一个标记!编辑区。
答案 0 :(得分:2)
如上所述:http://api.jquery.com/serialize/#comment-67394779
function keepLB (str) {
var reg=new RegExp("(%0A)", "g");
return str.replace(reg,"%0D$1");
}
$(function() {
$("#comment_form").validate({ submitHandler: function(form) {
$.post('/u/r/l/', keepLB($("#comment_form").formSerialize()), function(data) {
$('#comment_container').html(data);
});
}
});
如果它不起作用,请手动urlencode textarea数据:
$(function() {
$("#comment_form").validate({ submitHandler: function(form) {
$.post('/u/r/l/', "textareadata="+escape($("#mytextarea").value), function(data) {
$('#comment_container').html(data);
});
}
});
如果您还想发送其他表单内容(注意:请不要在这里给textarea一个“名称”,只是一个id!):
$(function() {
$("#comment_form").validate({ submitHandler: function(form) {
$.post('/u/r/l/',
$("#comment_form").formSerialize()+"&textareadata="+escape($("#mytextarea").value),
function(data) {
$('#comment_container').html(data);
});
}
});
答案 1 :(得分:0)
一个想法(如果jQuery序列化的标准用法不起作用)是标记代码正在使用该textarea并做一些奇特的事情,以便它甚至不再像textarea那样。 Markitup API中是否有某种方法可以检索数据?
答案 2 :(得分:0)
这里main_post_txt是你正在使用的html文本区域元素的id,在jquery中你可以通过使用
轻松获得它的值var post_text = $("#main_post_txt").serialize();