1

同じドロップダウン メニューが複数あるので、それらを同じにする必要があります。

 <select name="Obrojgoluba" id="otacmajka" class="selectbox_dodajpostojeceg" onchange="dodajpostojeceg('otac')">
  <option value="1">06557-07-681</option>
  <option value="2">07216-05-552</option>
</select>

これは、その選択リストから値を取得するための私のjQuery関数です

function dodajpostojeceg(x)
{
    var ID = $('select[name="Obrojgoluba"]').val();
    alert(ID);

}

しかし問題は、自分のサイトにある他のリストからではなく、最初の選択リストから値を取得することです。最初のものをクリックすると、良い値が得られます。しかし、最初の選択リストと同じサイト上の他の選択リストをクリックすると、最初の選択リストから記憶された値が返されるか、空または値が返されます

4

3 に答える 3

2

これを使用しています

var ID = $('select[name="Obrojgoluba"]').val();

そして、あなたが言ったようにselect、あなたのページには複数ある可能性があります。したがって、それらが同じ名前を持っている場合、上記のコードはfirst1つを選択し、それが得られます。

したがって、関数とマークアップを変更して、このコードを実行可能にすることができます。

function dodajpostojeceg(element)
{
    var ID = $(element).val();
    alert(ID);
}

この関数を次のように呼び出します

<select name="Obrojgoluba" id="otacmajka" class="selectbox_dodajpostojeceg" onchange="dodajpostojeceg(this)">

JS フィドルのデモ

于 2013-05-26T12:29:52.747 に答える
1

奇妙なことをしていますが、これを試してください:

function dodajpostojeceg(x)
{
    var ID = $(this).val();
    alert(ID);
}

CBRoe のコメントのように、複数の同一 ID は無効であり、進行を妨げる可能性があります...

于 2013-05-26T12:26:02.013 に答える
1

jqueryライブラリが含まれており、関数が前に定義されていることを確認してくださいhtml

<head>
    function dodajpostojeceg(x)
    {
        var ID = $('select[name="Obrojgoluba"]').val();
        alert(ID);
    }
</head>

<body>
    <select name="Obrojgoluba" id="otacmajka" class="selectbox_dodajpostojeceg" onchange="dodajpostojeceg('otac')">
        <option value="1">06557-07-681</option>
        <option value="2">07216-05-552</option>
    </select>
</body>

フィドル: http://jsfiddle.net/kR8yH/

htmlレンダリングされると、名前付きの関数が検索されます。定義されていない場合は、と関数dodajpostojeceg()をバインドできません。select

selectすべてのs が一意にnamedであると仮定しています

于 2013-05-26T12:31:00.930 に答える