2011-02-06 12 views
0

私はすべてのフォーム入力を取得し、そこにajax経由で送信するための値を含むxml文字列を作成しようとしています。jqueryシリアル化されたフォーム入力をxml文字列に変換する

私はこの希望:

<form id="formtest"> 
<input type="text" name="test1" id="test1"/> 
<input type="text" name="test2" id="test2"/> 
<input type="text" name="test3" id="test3"/> 
<input type="text" name="test4" id="test4"/> 
<input type="text" name="test5" id="test5"/>   
</form> 

になるために:

<formtest> 
    <test1></test1> 
    <test2></test2> 
    <test3></test3> 
    <test4></test4> 
    <test5></test5> 
</formtest> 

はどのようにこれを行うことができますか?

ありがとうございました。

+0

ajaxリクエストで送信しますか?どのような目的のために –

+0

? –

+0

どこに送りますか? – Ritesh

答えて

2

まず、jQueryの内XMLドキュメントを作成します。

var xml = $('<xmlBody></xmlBody>'); //<xmlBody> can be replaced with whatever tag is appropriate for your uses 

は、このような同じような値を追加します。

xml.find('xmlBody').first().append('<tag>'+data+'</tag>'); 

あなたはXMLをシリアル化するプラグインが必要な場合があります。 This、おそらく?

これは非常に簡単な例ですが、うまくいけばそれが始まります。詳細はjQuery docsをご覧ください。

+0

@ CloudedVision:ご返信ありがとうございます。しかしこれは私の言葉ではありません。私の質問は、タグ内に "データ"を作り出す方法です。私はすべての入力をそれらの値の中のxmlタグとして表示したいと思います。 – user590586

+0

あなたはあなたが持っているjQuery XMLオブジェクトをシリアル化する?私は自分の答えを編集した、それは今それをカバーする必要があります。 –

+0

@ CloudedVision:質問を更新しました。 – user590586

1
var xml = $('<formtest></formtest>'); 

$("form#formtest input").each(function(){ 
    xml.find('formtest').first().append('<' + $(this).attr('id') + '>' + $(this).val() + '</' + $(this).attr('id') + '>'); 
}); 
関連する問題