javascript - 仅在选中时更改所选选项的文本

标签 javascript jquery html css django

我有一个选择框,允许用户为一件衣服选择一个类别。类别可以有子类别,所以为了显示该层次结构,我这样写选项:

Category Name
  ├─ Sub-category name

看起来像这样:

类别名称

├─ 子类别名称

不幸的是,当用户选择子类别时,选择框中显示的文本包含结构字符。如何在选择选项时仅显示类别名称,但在更改选项时保留结构 HTML?有没有更好的方法来显示选项中类别的层次结构? Optgroups 对我不起作用,因为用户还需要能够选择顶级类别。

这是现在的样子。

http://jsfiddle.net/K6yfp/

最佳答案

也许你正在寻找optgroup

<select>
  <optgroup label="Swedish Cars">
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
  </optgroup>
  <optgroup label="German Cars">
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
  </optgroup>
</select>

FIDDLE

关于javascript - 仅在选中时更改所选选项的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18732924/

相关文章:

javascript - 如何使分钟值在秒达到 60 后从 0 开始?

javascript - native react : Is it possible to replace 'array[0]' with 'this.state' ?

javascript - 如何使用 Rails 5 + jQuery 保持通过 Turbolinks 提交的页面状态

javascript - 如何使用语义 ui 制作远程模态

javascript - 使用 JavaScript 将 Json 转换为 html 表

html - 展开页面集html和css

javascript - 在本地运行的 Meteor.js 应用抛出 TypeError : Cannot read property 'appId' of undefined

jquery - 在 jquery flexigrid 中将滚动应用到浏览器而不是表

javascript - 一次返回数组的 x 项

javascript - 使用 Intl.NumberFormat 有条件地删除格式化货币值上的小数