- ベストアンサー
jQueryにてformの中を書き換え、値を取得する方法
- jQueryを使用してformの中を書き換え、値を取得する方法について解説します。
- 具体的には、$.ajaxを使用してadd.phpにリクエストを送り、その結果を特定の要素に表示させます。
- しかし、この方法ではformからの値を取得することができません。取得するための解決策についても説明します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No.1の回答無視して下さい。 jQueryはもっとおりこうのはずです。 dataType: "html" で返される形式はTEXTでした。 XMLやXHTMLじゃありません。 $.html(html) で生成されるjQueryオブジェクトはimportNodeする必要は無い はずです。 よって、原因は他にあると思います。
その他の回答 (1)
- yyr446
- ベストアンサー率65% (870/1330)
jQueryでどうなのか詳しく見てませんが、 HTMLで取得しているので、フォームの中身を $("#list").html(html); で変更するのは、だめなんじゃないかと.... 「Node は必ず、自分を生成してくれた 1 個の Document と結び付いています。」 jQueryでやるなら、 $("#list").replaceWith(html) とか、#listがformのどこにあるのか解らんけど、 parent=$("#list").parent().get(0); parent.detach("#list"); parent.append(html); あるいは、 next=$("#list").next().get(0); parent.detach("#list"); $(html).insertBefore(next); とか、
補足
#list は、 <div id="list"> <input name='item_name' value='1' id='item_name_1' type='radio'> <label for='item_name_1'>ほげほげ</label> </div> となっております。 yyr446 さんのを参考に修正してみましたが、 formからのデータはnullでした。 nullといいますか、item_nameという要素自体がpostされていないようです。。
補足
解決しました。 完全に思い違いでした。。 .html で動作するようになりました。。 なぜ動くようになったのか不明ですが…。