对,我有一个jQuery函数,我正在努力工作。有一个Select下拉菜单,当选择“Fat Quarter”时,我希望它在下面的jQuery函数中的值“a”的一半
HTML:
<select data-unit="m" data-common-unit="m" name="length_needed" id="length_needed" class="amount_needed">
<option value="0.500">Fat Quarter</option>
<option value="0.25"> 1/4m</option>
<option value="0.5"> 1/2m</option>
<option value="0.75"> 3/4m</option>
<option value="1"> 1m</option>
</select>
jQuery的:
jQuery(document).ready(function(a) {
function g(a) {
var b = "",
d = decimals,
e = pos,
f = symbol;
switch (.....) {
case "left":
if ("input.amount_needed".value == "Fat Quarter"){
b = '<span class="amount">' + f + a/2 + "</span>";
}else{
b = '<span class="amount">' + f + a + "</span>";
}
break;
...
}
}
基本上if语句在某处出错,我无法弄明白 - 它显示价格已满(不除以2)。
完整代码可以在这里看到: https://jsfiddle.net/avfsdL9x/
没有if语句就可以正常工作 - 它是html,php,jquery的混合体,但是我不能将所有的PHP放在100多个文件中。
答案 0 :(得分:1)
你需要做这样的事吗?
if ($("input.amount_needed").val() == "0.500") {
此处0.500
和0.5
将被视为不同的字符串,因此您可以信任它们。哇,我花了大约半个小时才明白你想要讲什么!
我不确定您是否需要在switch
case
声明中加入。只需在onchange
事件中绑定它就可以了。
答案 1 :(得分:0)
最后让它工作 - 实例无法使用$,因为它需要jQuery代替
if (jQuery("select.amount_needed").val() == "0.500") {
b = '<span class="amount">' + f + a/2 + "</span>";
}else{
b = '<span class="amount">' + f + a + "</span>";
}
}