0

私はそのようなサイトを持っています:(フォームのセット)

                <select id="group_dropdown" name="selectinput">
                <option value=0>all</option>
                <option value=1>1 option</option>
                <option value=2>2 option</option>
                </select>               


        <form method="post" class="form-inline" id="form11">
           <input type="text" name="1forminput" placeholder="0"></label>
        <button type="submit" class="btn btn-success ml40" >save</button>
        </form>

        <form method="post" class="form-inline" id="form22">
           <input type="text" name="forminput" placeholder="0"></label>
        <button type="submit" class="btn btn-success ml40" >save</button>
        </form>

これらのフォームのいずれかが送信されたときに(送信フォーム内の追加フィールドのように)、この選択(これらのフォームの両方で「相互」)からデータを送信したいと思います。それはそのための簡単な解決策ですか?

4

2 に答える 2

1

非表示の入力を追加し、開始ラベルタグなどで有効なマークアップを作成します

<select id="group_dropdown" name="selectinput">
    <option value="0">all</option>
    <option value="1">1 option</option>
    <option value="2">2 option</option>
</select>

<form method="post" class="form-inline" id="form11">
    <label>
        <input type="text" name="1forminput" placeholder="0" />
        <input type="hidden" name="select_value" />
    </label>
    <button type="submit" class="btn btn-success ml40">save</button>
</form>

<form method="post" class="form-inline" id="form22">
    <label>
        <input type="text" name="forminput" placeholder="0" />
        <input type="hidden" name="select_value" />
    </label>
    <button type="submit" class="btn btn-success ml40">save</button>
</form>

次に、選択の値が変更されたときに非表示の入力を入力します。

$('#group_dropdown').on('change', function() {
    $('[name="select_value"]').val(this.value);
}).trigger('change');

そして、selectの値は、送信時に両方のフォームで送信され、次のようにアクセスされます。

$_POST['select_value'];
于 2013-03-26T21:03:39.470 に答える
0

次のようにフォームをシリアル化した後、新しいパラメータを追加できます。

$('#form11').submit(function(){
   $.ajax({
        type : 'POST',
        url : 'url',
        data : $('#form11').serialize() + "&select="+$('#group_dropdown').val()  
    }).done(function( data ) {
       //callback
    });
   return false;
  });
于 2013-03-26T21:03:37.887 に答える