我对AJAX并不十分熟练,因此我正在使用一些工具并尝试集成和自定义它们。首先,这是一个使用AJAX表单提交帖子的wordpress网站。这一切都很棒!现在,当然,我必须添加一个WYSIWYG编辑器,需要弄清楚如何正确提交html内容。
这是提交代码:
jQuery("form.pfs").submit(function() {
// vvv I ADDED THIS LINE!!! vvv
jQuery('textarea#postcontent').val(jQuery('div.workzone iframe').contents().find('body').html());
jQuery(this).ajaxSubmit({
type: "POST",
url: jQuery(this).attr('action'),
dataType:'json',
beforeSend: function() {
jQuery('.pfs-post-form #post').val('posting...');
},
complete: function(request,textStatus,error) {
data = jQuery.parseJSON(request.responseText);
if (data && data.error) {
jQuery('#pfs-alert').addClass('error').html('<p>'+data.error+'</p>').show();
jQuery('.pfs-post-form #post').val('Post');
} else {
jQuery('form.pfs').reset();
location.reload();
}
}
});
return false;
});
正如您所看到的,我添加了第一行,我在WYSIWYG(http://elrte.org/)中获取HTML的内容,并将其设置为原始textarea的值(#postcontent)。
如果出现错误,AJAX可以正常工作,因此只有例程的“else”部分才会抛出错误:
Uncaught SyntaxError: Unexpected token < jquery.js:2
e.extend.parseJSON jquery.js:2
jQuery.submit.jQuery.ajaxSubmit.complete pfs-script.js:31
F
如您所见,我需要验证恶意代码(不是此帮助请求的一部分!!)但更重要的是,我希望能够在我的表单帖子中接受HTML。想法?我不是100%确定我明白什么是失败的以及在哪里......
答案 0 :(得分:0)
结果发现与另一个插件存在冲突。追踪request.responseText显示它。这段代码很好用。