0

我对 AJAX 的经验并不丰富,因此我正在使用一些工具并尝试集成和自定义它们。首先,这是一个使用 AJAX 表单提交帖子的 wordpress 网站。这一切都很好!现在,当然,我必须添加一个所见即所得的编辑器,并且需要弄清楚如何让 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 的内容并将其设置为原始文本区域 (#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% 确定我明白什么是失败的以及在哪里......

4

1 回答 1

0

原来与另一个插件有冲突。追踪 request.responseText 揭示了它。这段代码工作得很好。

于 2012-07-25T20:46:58.240 回答