我想动态获取表单中select标签的值。 我实际上是这样做的
<select name="media_types_id" id="type">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<script>
var option = $("#type option:selected").val();
console.log(option);
</script>
但是这会返回所选选项的值,并且在我更改表单中的选项时它不会更改。我选择1,如果我选择2,它保持在值1 ...
答案 0 :(得分:3)
将change
个事件绑定到您的<select>
元素并使用其值:
$("#type").on("change", function() {
var option = this.value;
console.log(option);
});
另请注意,事件绑定应在加载DOM时完成,因此要么将此代码放在</body>
之前,要么使用$(function() { });
处理程序。
答案 1 :(得分:3)
尝试关注使用change()
事件获取下拉列表的选定值
$("#type").on("change",function(){
var Option = this.val();
console.log(Option);
});
答案 2 :(得分:3)
但您的代码全局运行。所以第一次,页面加载1是选定的值。
在change
事件
即
$('#type').on("change",function(){
var option = $("option:selected",this).val();
console.log(option);
});
答案 3 :(得分:2)
您需要将更改事件绑定到选择列表:
<script>
$(function() {
$("#type").change(function() {
console.log($(this).val());
});
});
</script>
答案 4 :(得分:1)
事件处理程序每次发生某事时都会调用一个函数。
纯JS
var option = document.getElementById("type").value;
document.getElementById("type").onchange = function(e) {
option = this.value;
}