2013-12-11 62 views
5

我有一个片段,客户在网页上按下按钮。jQuery attr选择下拉不工作Mac Safari

此按钮应该在隐藏的选择框中选择一个选项并更新页面上的一些隐藏字段。它适用于所有平台和浏览器在Mac上的Safari上接受..下拉列表不会更新。

跟踪它到

$('#selectSize option[id=Bespoke]').attr('selected', 'selected'); 

下拉不更新,但一切工作 - 只在Safari在Mac上。

小提琴是在这里:http://jsfiddle.net/XPD25/10/

回答

10

您可以使用.prop代替:

$('#selectSize option[id=Bespoke]').prop('selected', true); 

此外,ID都是唯一的,所以没有必要在附加位选择器:

$("#Bespoke").prop("selected", true); 
+0

这是Safari和Mac设备的主要缺陷。我如何向jQuery团队和Safari团队报告此问题?据我所知,Chrome/Firefox触发问题并且.prop()似乎是最好的方法 – TheBlackBenzKid

2

试试这个

$('#selectSize option[id=Bespoke]').prop('selected', true);