【问题标题】:Javascript: setting option's selected attribute doesn't change it's selected propertyJavascript:设置选项的选定属性不会改变它的选定属性
【发布时间】:2013-06-25 05:54:57
【问题描述】:

由于某种原因,我的项目中一个选项的 selected 属性不会影响它的 selected 属性,我不知道为什么。

我正在使用 jqGrid 的 列选择器来选择要在我的网格上显示的列。 列选择器基于 multiSelect.js,它使用选择来标记选定的列以供显示。 multiSelect.js 使用option.setAttribute('selected', 'selected') 将列标记为选中,但使用option.selected 属性检查选择的问题。通常这两个是相同的,但在这种情况下不是。

出于维护原因,我不想弄乱插件的代码,所以如果有人知道为什么会发生这种情况,我将不胜感激。

谢谢, 尤瓦尔

【问题讨论】:

  • .prop() vs .attr()的可能重复
  • 您使用的是哪个版本的 jQuery?正如@undefined 所说,这可能是 .prop() 与 .attr() 的问题。
  • 这是一个更晚的版本,而且你可以看到讨论中的代码不是 jQuery,而是纯 java 脚本。突出显示的代码是取自 multiselect.js 的 sn-p

标签: javascript jquery html jqgrid multi-select


【解决方案1】:

阅读 jQuery 1.6.1 发布时的博客文章,我们遇到了一个围绕属性和属性的巨大教育问题。我认为这将解释发生在你身上的事情。

http://blog.jquery.com/2011/05/12/jquery-1-6-1-released/

【讨论】:

  • 正如我上面评论的,访问是由纯 java 脚本完成的,而不是 jQuery。不过还是谢谢。
  • 发布链接的目的是指出 jQuery 试图解决的 attr 和 prop 之间的区别。那篇博文很好地记录了这些差异,我认为这可以帮助您了解正在发生的事情。
猜你喜欢
  • 1970-01-01
  • 2011-03-31
  • 2011-06-03
  • 2015-09-12
  • 2017-10-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多