javascript - 使用 JavaScript/jQuery 将下拉列表选项添加到价格计算器

标签 javascript jquery drop-down-menu calculator

当我尝试添加选项时,我的价格计算器出现问题。 (jsFiddle在这里=http://jsfiddle.net/wemdragon/ZG8m)

我想做的是它所说的:

var firstoption=$('select#myselect')

我希望将期权的值(value)转化为价格值(value),但我似乎做不到。它在我的购物车中有效,但在 JavaScript 中无效。

也许我试图在错误的地方添加值,我不知道出了什么问题。

最佳答案

您的选择 ID(至少在 fiddle 中)采用驼峰式命名为 mySelect,但您试图访问 ID #myselect。除非您更改标记的 ID,否则它应如下所示:

var firstoption = $('select#mySelect');

我还注意到您指定了默认值 0 来表示不选择选项。由于某种原因,当 val() 为零时,!firstoption.val() 返回 false 而不是 true,就像您的 if 语句似乎所期望的那样。 !0 在这种情况下显然是正确的。

我更改了逻辑以匹配您的标记,它的行为似乎符合您的预期或想要的:

if (firstoption.val() == 0) {
    error.html('Please include an option!');
    firstoption.focus();
}

编辑更新的 fiddle :http://jsfiddle.net/ZG8mv/8/

现在 focus() 执行将按错误的顺序显示。即,如果没有指定宽度并且没有指定选项,则该框将获得焦点。以前,选项消息会优先于其他两条消息。

关于javascript - 使用 JavaScript/jQuery 将下拉列表选项添加到价格计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10181227/

相关文章:

Javascript 对象构造函数重写以停止调用某些方法

css - 带有下拉菜单的响应标题 : height and overflow

javascript - 在 javascript 和 html 中转义撇号(单引号)字符

javascript - 处理类似于 Chrome 的 Omnibox 的字符串

javascript - 当 AngularJS 中的表单中有多个下拉菜单时的最佳实践

javascript - 将当前 JQuery 对象传递给 TypeScript 箭头函数

javascript - 可从内部拖动

jquery - 如何将变量传递到 jQuery/Javascript 中的正则表达式

css - 围绕子 div 元素居中父 Div(反向继承?)

jquery - 在鼠标悬停在菜单上时将焦点从下拉列表设置为窗口