javascript - html select 无法显示正确的值

标签 javascript jquery html

在firefox 46.0.1中,只有一个选择element与一些option元素。 select value 属性正在由 JavaScript 代码更改,并在浏览器检查器窗口中进行确认

<select value="G" data-id="someid">其中一个选项是
<option value="G">G please</option>

但是在控制台中:
$('select').first().val()给出空字符串,如""因此显示屏不会像我预期的那样显示所选选项。

如果我发出 $('select')[0].value = "R" ,显示屏会通过显示正确的选项值进行响应。

为什么以及如何解决这个问题,以便在 javascript 代码更改 select 元素的 value 属性时显示正确的选项?谢谢

<template name="select">
  <select data-id={{_id}} value={{value}}>
    {{#each values}}
      <option value={{value}}>{{caption}}</option>
    {{/each}}
  </select>
</template>

该值由 Meteor Template 帮助程序填充。

编辑
这是来自助手的底层数据:“sample”

{
    "_id" : "SqNF9wTsbaxEhj5b4",
    "element" : "select",
    "action" : "action12",
    "values" : [
        {
            "group" : "bCode",
            "value" : "G",
            "caption" : "Select food type..."
        },
        {
            "group" : "bCode",
            "value" : "O",
            "caption" : "water"
        },
    ],
    "userId" : "uhx7rt",
    "createdAt" : 1464135235771,
    "value" : "G"
}

最佳答案

正如 charlietfl 在评论中建议的那样。 我不得不放弃使用 value select 上的属性元素,而不是我使用 selected option 上的属性元素。

正如另一篇文章中所建议的那样,Meteor 不允许 html 属性为空值。我必须删除未选择的选项的属性。

关于javascript - html select 无法显示正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37425630/

相关文章:

javascript - 单击时将类一一添加到所有元素

html - css 平滑地移动元素

刷新这种验证码的 Javascript 代码

javascript - 生成唯一的数字

javascript - 使用正则表达式搜索元素的节点列表

javascript - Owl Carousel 两行问题

javascript - 我如何让 filepicker.js 只允许上传图片和 pdf

html - 在 css 中显示在按钮后面的文本

javascript - protected 路由、上下文 API 和 firebase 用户身份验证请求的问题

javascript - 在没有 settimeout 的情况下使用 JQuery 延迟函数