从动态 select 选项获取文本
Get text from dynamic select option
我有多个 select 选项,我想在 .texts
上写 car
或 motorcycle
这几个动态select选项
<td>
<select id="area-0">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
<td>
<select id="area-1">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
这是我的脚本
$('select[id^=area]').change(function(){
var text_t = $(this option:selected).text();
$(this).parent().next().html(text_t);
});
如何将 car
或 motorcycle
放在 .texts
上
您可以使用 .find()
方法获取所选 option
的文本。根据当前的实现,您一定遇到了语法错误。
var text_t = $(this).find('option:selected').text();
而不是
var text_t = $(this option:selected).text();
You have invalid html
. Wrap it in table -> tr
$(this option:selected)
is not a valid selector. Use $(this).find('option:selected')
$('select[id^=area]').change(function() {
var text_t = $(this).find('option:selected').text();
$(this).parent().next().html(text_t);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
<tr>
<td>
<select id="area-0">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
<td>
<select id="area-1">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
</tr>
</table>
我有多个 select 选项,我想在 .texts
car
或 motorcycle
这几个动态select选项
<td>
<select id="area-0">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
<td>
<select id="area-1">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
这是我的脚本
$('select[id^=area]').change(function(){
var text_t = $(this option:selected).text();
$(this).parent().next().html(text_t);
});
如何将 car
或 motorcycle
放在 .texts
您可以使用 .find()
方法获取所选 option
的文本。根据当前的实现,您一定遇到了语法错误。
var text_t = $(this).find('option:selected').text();
而不是
var text_t = $(this option:selected).text();
You have invalid
html
. Wrap it intable -> tr
$(this option:selected)
is not a valid selector. Use$(this).find('option:selected')
$('select[id^=area]').change(function() {
var text_t = $(this).find('option:selected').text();
$(this).parent().next().html(text_t);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
<tr>
<td>
<select id="area-0">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
<td>
<select id="area-1">
<option value="1">Car</option>
<option value="2">Motorcycle</option>
</select>
</td>
<td class="texts"></td>
</tr>
</table>