AJAX jQuery表单提交与表单中的HTML

时间:2012-07-25 14:33:10

标签: ajax jquery-forms-plugin

我对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%确定我明白什么是失败的以及在哪里......

1 个答案:

答案 0 :(得分:0)

结果发现与另一个插件存在冲突。追踪request.responseText显示它。这段代码很好用。