6

選択オプションのtitle属性に基づいて非表示フィールドを更新しようとしていますが、次のコードを試しましたが、機能しないようです。助けてくれてありがとう!

<form>
    <select id="selectbox">
        <option name="test" value="one" title="title" selected="selected">one</option>
        <option name="test2" value="two" title="title2">two</option>
    </select>
</form>
<input id="update" type="hidden" value="defaultold" />

<script>
    $('#update').val('default');
    $('#selectbox').change(function() {
        $('#update').val($(this).attr("title"));
    });
</script>
4

2 に答える 2

18

そのコードをブロック内にカプセル化し、オプションのタイトル$(document).ready(...を使用する必要があります。

$(document).ready(function() {
    $('#update').val('default');   
    $('#selectbox').change(function() {
         $('#update').val($(this).find("option:selected").attr("title"));
    });
});

$(this)select要素のコンテキストを参照しfindます。この場合は選択されたオプションである対象の子孫を取得するために使用できます。

于 2010-05-07T20:14:48.520 に答える
2

jqueryを使用して選択したオプションのテキストにアクセスする:

var title = $( "#myselectId option:selected" ).text();
于 2018-10-05T11:53:00.813 に答える