0

私はコードをもっている:

<table>
    <tr>
        <td>
            <input type="text" value="1" />
            <input id="button" type="button" value="Click me!" />
        </td>
    </tr>
</table>

以下のコードで値を取得したいのですinput[type="text"]が、うまくいきません。助けてください

<script type="text/javascript">
    $(document).ready(function() {
        $("#button").bind("click", function() {
            alert($(this).siblings().find('input[type="hidden"]').val(););
        });
    });
</script>
4

8 に答える 8

3

.find()は子を検索するため、ここでは使用できません。使うだけsiblings()

$(this).siblings('input').val()
于 2013-09-12T07:50:28.280 に答える
2

これを試して。

$("#button").click(function() {
            alert($(this).prev('input[type="text"]').val());
        });

デモHere

于 2013-09-12T07:50:33.727 に答える
2

最初の問題は、テキスト ベースの入力ではなく、非表示の入力を見つけようとしていることです。余分なセミコロンもありましたが、フィルターを兄弟呼び出しに移動して正しく機能させる必要もあります。

$(document).ready(function() {
    $("#button").bind("click", function() {
        alert($(this).siblings('input[type="text"]').val());
    });
});

JSFiddleを参照してください

于 2013-09-12T07:54:24.037 に答える
1

まず、あなたの入力タイプは ではありtextませんhidden。Jquery を使用してデータをフェッチしhidden、非表示の場合は以下のように使用します。

$(document).ready(function() {
    $("#button").bind("click", function() {            
        alert($(this).siblings('input[type="hidden"]').val());
    });
});

これがテキストの場合:

 $(document).ready(function() {
    $("#button").bind("click", function() {            
        alert($(this).siblings('input[type="text"]').val());
    });
});

デモ

于 2013-09-12T07:55:52.820 に答える