通过find()获取函数中的多个var

时间:2017-09-18 10:44:43

标签: javascript jquery

我正在尝试使用两个选定的选项和输入创建计算。就像你选择' a'并且' d'然后输入= 1它给出结果75.我写了一个jquery代码,但它不起作用。我在控制台上找不到任何错误。请在下面查看:



$(window).load(function(){
function doStuff() {
var uone= $("#ud").children(":selected").attr("id") == 'a';
var utwo= $("#ud").children(":selected").attr("id") == 'b';
var uthree= $("#ud").children(":selected").attr("id") == 'c';
var bone= $("#bt").children(":selected").attr("id") == 'd';
var btwo= $("#bt").children(":selected").attr("id") == 'e';
var getvalue;

if ($(uone).find(bone)) {
    getvalue = 75;
}
if ($(uone).find(btwo)) {
    getvalue = 70;
}
if ($(utwo).find(bone))  {
    getvalue = 81;
}
if ($(uthree).find(bone))  {
    getvalue = 79;
}

var shw = $('#inputamount').val();
var total = getvalue * shw ;
$("#totalop").html(total);
}
$("#inputamount").on('keyup', doStuff);
$("#ud").on('change', doStuff);
$("#bt").on('change', doStuff);
    });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.1/jquery.min.js"></script>
<select name="sucompn" id="ud">
    <option id="a">a</option>
    <option id="b">b</option>
    <option id="c">c</option>
</select>
<select name="ducompn" id="bt">
    <option id="d">d</option>
    <option id="e">e</option>
</select>
<input autocomplete="off" name="inputamount" id="inputamount" value="" type="text">
<span id="totalop"></span>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您已定义UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.black] ,但在代码中使用另一个变量var getValue;getvalue = 75;getValue不相同)。可能你有未定义的变量,这个问题通常不会产生控制台信息。

答案 1 :(得分:1)

不要将id使用值用于选项

<select name="sucompn" id="ud">
  <option value="a">a</option>
  <option value="b">b</option>
  <option value="c">c</option>
</select>
<select name="ducompn" id="bt">
  <option value="d">d</option>
  <option value="e">e</option>
 </select>

  

然后你可以得到像

这样的值
var selectedUd = $("#ud").val();
var selectedBt = $("#bt").val();

然后你可以这样做:

var uone = selectedUd== 'a';
var utwo = selectedUd == 'b';
var uthree = selectedUd == 'c';

var bone =selectedBt == 'd';
var btwo =selectedBt== 'e';

然后(我真的不知道你想在这里做什么),但你可以做像

这样的事情
var getValue;
if(uone && bone) getvALUE =75;
else if(uone && btwo) getValue = 70; 
else if(utwo && bone) getValue = 81; 

...here rthe rest of posibilities

var shw = $('#inputamount').val();
var total = getvalue * shw;
$("#totalop").html(total);

以下是Plunker - Sample