【问题标题】:jQuery ternary for setting option value selected by defaultjQuery 三元用于设置默认选择的选项值
【发布时间】:2015-02-14 01:52:08
【问题描述】:

.each 内部我使用.map 来组装选择输入的内容。一切正常。但是,如果给定的值相同,我想设置 select 属性。

jQuery:

return '<option value="' + item.itemID + '"' + (item.itemID === thing.itemID) ? 'selected="selected"' : '' + '>' + item.itemDesc+ '</option>';

这就是我想要完成的,但这显然行不通。我可以做一个老派的“如果”,但我尽量不重复自己。

我很接近,但没有雪茄。这:(item.itemID === thing.itemID) 返回true。由于某种原因,似乎无法将这些部分组合在一起。

感谢您的宝贵时间!

【问题讨论】:

  • 试试:(item.itemID===thing.itemID ? 'selected="selected"' : '')

标签: jquery ternary-operator


【解决方案1】:

试试这个:

return '<option value="' + item.itemID + '"' + 
       (item.itemID === thing.itemID ? 'selected="selected"' : '') +
       '>' + item.itemDesc+ '</option>';

【讨论】:

  • 这很好用。不同之处在于您将整个三元组括在括号中?
  • 是的——我认为在您的原始代码中,: 之后的所有内容都被视为“else”语句的一部分。反正我就是这么读的。
  • 就是这样,一切都以true 的形式返回。我猜应该走开然后回来。非常感谢!
猜你喜欢
  • 2023-03-18
  • 2015-09-19
  • 2017-02-05
  • 1970-01-01
  • 2017-04-28
  • 1970-01-01
  • 2017-12-11
  • 1970-01-01
  • 2017-04-30
相关资源
最近更新 更多