2

はい/いいえのチェックボックスや、幅/高さなどのテキスト入力など、非常に単純なフィールドがいくつかあります。

ユーザーに機能のボックスをチェックしてサイズを定義してもらいたいので、チェックしたらクエリ文字列<input type="checkbox" id="header" name="header" value="true" />に追加したいと思います。&show_header=true

私は非常に基本的なフィドルをセットアップしましたが、正しく動作させることができないようです。同様に、ボックスにチェックを入れて値を入力し、ボックスのチェックを外すと、同じことが繰り返され、最終的に次のようになります。&show_header=true&show_header=true&show_header=true&show_header=true&show_header=true

4

3 に答える 3

2

メソッドを使用するだけですserialize()

function displayVals() {
    $("code").html(function(i, val) {
        var query = $("input").serialize();
        return "http://...?method=review_box&amp;" + query;
    });
}

デモ: http://jsfiddle.net/AYQyB/4/

于 2012-11-30T22:50:00.870 に答える
0

たぶんそうですか?

<input class="my-vars" type="checkbox" name="rbshowheader" id="rbshowheader" value="true" />
<input class="my-vars" type="text" name="rbwidth" id="rbwidth_id" value="" />
<pre><code>http://yoursite.whirlocal.com?method=review_box</code><span id="query"></span></pre>

とJavaScript

$(function() {
  $('.my-vars').change( function() {
     var sQuery = $('.my-vars').serialize();
     $('#query').html('&'+sQuery);
   });
});
于 2012-11-30T23:08:50.300 に答える
0

jQuery の .serialize()関数を再発明しようとしているようです。

<form>
    <div><input type="text" name="a" value="1" id="a" /></div>
    <div><input type="text" name="b" value="2" id="b" /></div>
    <div><input type="hidden" name="c" value="3" id="c" /></div>
    <div>
        <textarea name="d" rows="8" cols="40">4</textarea>
    </div>
    <div><select name="e">
        <option value="5" selected="selected">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
    </select></div>
    <div>
        <input type="checkbox" name="f" value="8" id="f" />
    </div>
    <div>
        <input type="submit" name="g" value="Submit" id="g" />
    </div>
</form>

jQuery:

$('form').submit(function() {
    alert($(this).serialize());
    return false;
});

プロデュース:

a=1&b=2&c=3&d=4&e=5
于 2012-11-30T22:53:00.803 に答える