11

当我单击 Select 选项时,我正在处理 Changed 事件。

我想在代码中对此进行模拟,并让它看起来与用户单击该选项时相同。

到目前为止,在选项上设置 'selected' 属性并不会像单击它时那样突出显示它。

我可以触发选项上的“更改”并点击我的处理程序,但列表上的选项没有被选中,就像单击一样。

建议?

更新:查询选择代码工作得很好 - 感谢您的回复。问题是我的(当然)。我在 Jquery.Ajax Success: 块之外有选择代码,所以我认为它正在工作,但 ajax 响应代码正在处理它。

4

4 回答 4

5

我正在使用 jquery 数据表插件 ColumnFilterWidgets,我需要执行以下操作来执行过滤操作(基于 elclanrs 和 Ben Foster 的回答):

$("option").attr('selected', 'selected').parent().focus();
$("option").parent().change();
于 2013-04-19T20:53:56.507 回答
5
​$('option[value="4"]').attr('selected', 'selected').parent().focus();​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

为我工作。见http://jsfiddle.net/TZVyh/1/

于 2012-04-24T23:47:09.357 回答
0
$("option").attr("selected","selected"); 

将选择您想要的选项。之后您可以触发事件。

并且不要忘记使用以下方法清除其他选项的选定属性:

$("option").attr("selected",null);

或者

$("option").removeAttr("selected");
于 2012-04-24T23:42:32.237 回答
0

...但是列表上的选项没有被选中,就像单击一样。

我不完全理解您要做什么,但$('select').change()$('select option').click(). 在change事件$(this).val()中是所选选项的值以及在click事件中。

在任何一种情况下,您都可以选择一个选项$('select[value="yourvalue"]').prop('selected', true);

于 2012-04-24T23:47:31.703 回答