0

1つのフォームを使用してユーザー情報を2つの部分に分けて取得し、これらの値をシリアル化したい。これが私のコードでこれを行う方法です-

 <form action="">
<div id="11">
First name: <input type="text" name="FirstName" value="" /><br>
Last name: <input type="text" name="LastName" value="" /><br>
</div>

<button id="b1" >Proceed to get next two values</button>

<div id="22" style="display:none">
First name2: <input type="text" name="FirstName2" value="" /><br>
Last name2: <input type="text" name="LastName2" value="" /><br>
</div>

</form>

<button id="b2"  style="display:none">Serialize all form values</button>
<div></div>

したがって、上記のコードでは、他の2つを非表示にしながら、一度に2つのフィールドを表示したいと思います。次に、jquery serialize()を使用して4つの値すべてをシリアル化します。これが私のJqueryでこれを処理しようとしている方法です:

<script>
$(document).ready(function(){
  $("#b1").click(function(){
  $("#11").hide();
  $("#b1").hide();
  $("#22").show();
  $("#b2").show();
});
  $("#b2").click(function(){
    y = $("div").text($("form").serialize());
   alert("output" + y);
   });
});
</script>

ボタン(ID 11)をクリックすると、div2が表示され、自動的に消えます。私がどんな間違いをしているのかわからない。助けてください。

4

1 に答える 1

0

問題はとは何の関係もありませんserialize

このコード:

$("div").text($("form").serialize());

すべてのページのコンテンツを置き換えDIVます。特定のターゲットを設定するDIVには、IDを指定します。また、ボタンがクリックされたときにブラウザがフォームを送信するようにトリガーしないようにする必要があります。これは、デフォルトを防ぐためにスクリプトを設定または使用typeすることで実現できますbutton

デモ:http://jsfiddle.net/rd5Ac/

フォーム内にボタンを配置すると、ボタンの表示/非表示に必要なコードを保存できますDIV

于 2013-03-02T13:52:08.657 に答える