【问题标题】:Add a value to the option为选项添加一个值
【发布时间】:2013-03-09 21:21:19
【问题描述】:

我正在尝试在 Geddy 框架中使用 EJS(嵌入式 javascript)创建一个选择元素。我想做的是有类似的东西(只是一个例子):

<select>
  <option value="int"> Integer </option>
  <option value="float"> Single precision decimal point </option>
</select>

我没有找到任何示例...我知道用于创建类似的选择

<select>
  <option value="X"> X </option>
  <option value="Y"> Y </option>
</select>

我要写

<%- contentTag('select', ['X', 'Y']} %>

但是如何得到我想要的呢?

更新:

我在 EJS 文档中找到了 select_tag,但无法识别...我也尝试过类似

<%- contentTag('select', [{value: NumberTypeEL.NonNegativeInteger, text:'nonnegative integer'}, {value: NumberTypeEL.Integer, text: 'integer'}, {value: NumberTypeEL.Decimal, text: 'decimal'}, {value:NumberTypeEL.Fraction, text:'fraction'}], {class:'span6', name:'numberType'}) %>

但还是什么都没有。还有其他想法吗?

【问题讨论】:

  • 不是答案,但我记得我应该修复一个old issue。看一看。而且这似乎不被支持,所以我会add another issue on geddy。我会试着在今天晚些时候或明天看看。
  • 我快速浏览了一下,似乎很容易解决,我只需要稍后测试它。
  • 问题已关闭,但尚未在 NPM 上。更新后我会通知你的。
  • 谢谢!有空也可以看看this...
  • 嗯...在您注意到我之后,我是否必须使用 NPM 重新安装 Geddy?...您应该查看 selectTag 的文档,因为那里没有显示您的 html 代码,相反,该代码的结果是

标签: javascript node.js ejs geddy


【解决方案1】:

在新版本中有一个新的 selectTag。它的工作方式类似于您提到的 EJS 示例,因此您可以传递对象数组。它还允许您指定一个 selectedOption。您仍然可以使用contentTag("select"...),它适用于对象数组,但是,您无法使用 contentTag 选择选项。

已经存在的另一种方法是使用 contentTag 并将其传递给字符串而不是像这样的数组

contentTag('select', "<option value=\"1\" selected>Text 1</option>");

请查看geddyjs.org/documentation 上的文档并查找selectTag

注意:文档会在晚上更新,所以当你去那里时它可能不在那里,我现在正在复制它。

选择标签

`selectTagString(optionsArray, selectedOption, htmlOptions)

使用给定的optionsArray 创建一个 HTML 选择标记以创建 HTML 选项元素。

optionsArray 可以是字符串数组、数字数组或具有 value 和 text 属性的对象,分别用于 value 属性和 option 元素内容。

例子:
selectTag(['geddy', 'alex', 'neil'])
// => '<select><option value="geddy">geddy</option><option value="alex">alex</option><option value="neil">neil</option></select>'

selectTag(['open', 'close'], todo.status, { class:'span6', name:'status' })
// => '<select class="span6" name="status"><option selected="selected" value="open">open</option><option value="close">close</option></select>'

selectTag([{value: 1, text: "Text 1"}, {value: 2, text: "Text 2"}], 2)
// => <select><option value="1">Text 1</option><option selected="selected" value="2">Text 2</option></select>

【讨论】:

    猜你喜欢
    • 2013-02-17
    • 2013-03-13
    • 1970-01-01
    • 1970-01-01
    • 2021-04-29
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多