$.ajax
コールから大量のHTMLが返されます。 PHPからの文字列には、最初に2つの改行があります。ここでjQueryの改行ajax htmlコールバックの原因エラー
$data = "
<div>
<p>Here is some text</p>
</div>";
$.ajax
呼び出しです:私はそれをスローし、その時点で.hide().fadeIn(300)
を追加するまで
$('form#form_id').submit(function(e){
e.preventDefault();
$form = $(this);
$.ajax({
url: $form.attr('action'),
type: $form.attr('method'),
data: $form.serialize(),
dataType: 'html',
success: function(data) {
var $html = $($.parseHTML(data));
$html.appendTo('#container_id').hide().fadeIn(300);
}
});
});
すべての作品:TypeError: 'undefined' is not an object (evaluating 'hooks.cur = fn') jquery.js:1925
が。改行を削除しても機能します。文字列がHTMLであることが知られているが、 は、HTMLタグがないことを任意のテキストで始めることができ
場合は、 を返しますjQuery.parseHTML()に渡す:jQueryのは言うので、私は
$.parseHTML
を使用していますマークアップを表すDOMノードの配列jQueryコレクションは、これから作成される とすることができます。例えば、$($。parseHTML(htmlString))。
何が起こっているのですか?
おそらく '.parseHTML()'その中にjQueryオブジェクトではないだけ配列にHTMLデータをexploidingされ、それは '\ N ' 、または同様のことが起こっています。 –
テキストノードを除外し、エラーが解消されないかどうかを確認してください。 '.filter( '*')'です。 – Musa
ビンゴ。 'var $ html = $($。parseHTML(data))。filter( '*');'働いています。それを答えて、私はそれを受け入れます。 –