0

ifステートメントに問題がありますが、コードを正しく取得できません。

divsフォーム要素を含むページに複数あります。を介してすべての入力フィールドをクリアするリセットボタンがありますが、どういうわけか.val(" ")除外する必要があります。input[type=button]

ステートメントとフォーマットがどこかで間違いなく間違っているかどうかについて、私はあまり知識がありません。

<!-- Reset only current div -->
$('.reset_form').live('click', function() {
    $(this).parents("div.menu_creation_form").find("input").val('');
    if () {
        $(this).parents("div.menu_creation_form").find("input[type=button]").val();
    }
    else() {
        // do nothing
    }
});​
4

3 に答える 3

1

同じ種類の属性セレクターを使用して、テキスト入力のみを選択できます。

$(this).parents("div.menu_creation_form").find("input[type=text]").val('');

typeただし、属性をに明示的に設定しないと、これは機能しませんtext。type 属性を省略した場合、デフォルト値が使用され、テキスト ボックスがレンダリングされますが、この選択では見つかりません。これを回避するには、:textセレクターを使用できます。

$(this).parents("div.menu_creation_form").find("input:text").val('');

ただし、後者の方法は少し遅いと思います。

于 2012-10-02T22:25:25.730 に答える
1

そもそもif-elseは必要ありません..これを試してください

  $(this).parents("div.menu_creation_form").find("input:not([type=button])").val('');
于 2012-10-02T22:28:01.080 に答える
1

HTML:

<div class="menu_creation_form">
    <input type="button" value="Clear" class="reset_form" />
    <input type="text" value="Jim" />
</div>

jQuery:

​$('.reset_form').click(function() {
    $('input').not('[type="button"]').val('');
});​​​​​​​​​​​​​

フィドル: http://jsfiddle.net/gromer/kuu26/1/

キーは、を使用してい.notます。はまったく必要ありませんif

于 2012-10-02T22:28:48.280 に答える