我需要在下拉菜单中更改所选的选项同时触发下拉列表的onChange。
$('#type').val('option 1');
$('#type').val('option1');
我尝试了以上选择
<option value="option1">option 1</option>
然而到目前为止没有运气!
答案 0 :(得分:1)
使用以下内容:
$('#type').val('option1').change();
您应该将value
属性的值传递给.val()
函数。
您可以通过在代表change
元素的jQuery对象上调用.change()
(不带参数)来触发<select>
事件。
注意:调用.change()
不带参数是调用.trigger('change')
的快捷方式。
答案 1 :(得分:0)
您需要取消点击并使用正确的ID
$('#change').on("click",function(e){
e.preventDefault();// cancel
$('#type').val('option1').change(); // must be the value, not the text
});
此外,您无法提交选择。如果您愿意,可以提交表单,如果表单中没有name="submit"
当你更改选择时,你需要告诉我们你想要发生什么。例如,更改选择并让它提交
中的表单$(function() {
$('#change').on("click",function(e){
e.preventDefault();// cancel
$('#type').val('option1').change(); // assuming you want to trigger the change
});
$('#type').on('change',function() {
$(this).closest("form").submit();
});
});
答案 2 :(得分:0)
试试这个Demo
<option value="option 1">option 1</option>
$('#change').click(function(){
$('#type').val('option 1');
});
答案 3 :(得分:0)
您可以像这样使用您的代码。您的html代码中不存在#openvz
,这就是为什么它无效。您需要使用option1
而不是option 1
$('#change').click(function(){
$('#type').val('option1');
});