jquery在下拉菜单中找到所选项目的值

时间:2011-05-23 19:16:42

标签: jquery select jquery-selectors coldfusion-8

我有一个下拉列表,显示select标签中的值,我通常只使用$('#ID')。val()来获取值,但ID是未知的或动态添加的行。

在关闭选择标记之后,我有一个我正在使用的jquery ui图标,当点击时将捕获当前选择的下拉选项的值(此值将被复制到其他选择列表)。这段代码循环所以我知道我需要使用某种类型的.find()或.parent()或者那些仍然没有沉入其中的东西。

以下是源代码:

<tr>
<th class="form"><label>SI Contact</label></th>
<td id="name_29805"><div style="float: left;">
        <select name="contactsbcuid" id="contactsbcuid_29805" sid="29805" ordr="1">
            <option value="userID1234">Doe, John</option>
            <option value="userID1235">Doe, Jane</option>
            ...
            <option value="userID1236">Smith, David</option>
        </select>
        <input name="orig_contactsbcuid" id="orig_contactsbcuid_29805" value="userID1235" sid="29805" ordr="1" type="hidden">
    </div>
    <div style="float: right;"><span class="ui-icon ui-icon-copy vtip" onClick="CopyDown('contactsbcuid',1)" id="select_contactsbcuid_29805" title="Copy the selected value down the list." style="float: right;"></span></div></td>

2 个答案:

答案 0 :(得分:0)

看起来表格中只有一个选择。 所以找到'td'就足够了,当你发现它搜索选择时。

var value = $(this).parents('td').find('select').val();

答案 1 :(得分:0)

Is this jsFiddle what you are essentially looking for?

jQuery的:

$('span[id^="select_contactsbcuid"]').click(function() {

    var $select = $('select[name^="' + this.id.split("_")[1] + '"]');
    if ($select.length) { alert($select.val()); }

});