【问题标题】:Multiple OR conditions in Javascript FunctionJavascript 函数中的多个 OR 条件
【发布时间】:2018-10-30 01:34:12
【问题描述】:

我试图在 javascipt 函数中使用多个表单 ID,但它不起作用。代码是:

    $('#Rate1').keyup(function(){
    var Amt1;
    var Amt2;
    var Amt3;
    var Amt4;
    textone = parseFloat($('#Amt1').val());
    texttwo = parseFloat($('#Amt2').val());
    textthree = parseFloat($('#Amt3').val());
    textfour = parseFloat($('#Amt4').val());
    var result = textone + texttwo + textthree + textfour;
    $('#TotalInvoiceValue').val(result.toFixed(2));


});

我想像这样使用多个 id:

$('#Rate1' || '#Rate2' || '#Rate3' || '#Rate4').keyup(function(){
    var Amt1;
    var Amt2;
    var Amt3;
    var Amt4;
    textone = parseFloat($('#Amt1').val());
    texttwo = parseFloat($('#Amt2').val());
    textthree = parseFloat($('#Amt3').val());
    textfour = parseFloat($('#Amt4').val());
    var result = textone + texttwo + textthree + textfour;
    $('#TotalInvoiceValue').val(result.toFixed(2));


});

但它不起作用。请指出我在这里做错了什么..

如果您有更好的建议,也欢迎使用除 keyup 之外的其他东西。

【问题讨论】:

标签: javascript jquery


【解决方案1】:

听起来您只想将同一个事件处理程序分配给多个选择器。

https://api.jquery.com/multiple-selector/

尝试使用逗号“,”而不是逻辑或“||”

$('#Rate1, #Rate2, #Rate3, #Rate4').keyup(function(){
var Amt1;

【讨论】:

  • 或者,给元素一个共享类(如class="rate")并将该类用作您的jQuery选择器:$('.rate')
  • @JonUleis 嗨,你能告诉我如何在一个类中分配多个元素吗?
  • @CodyCodederson 我刚刚做到了!如果您包含一些 HTML,我可以更好地指出。
【解决方案2】:

第一个答案准确地回答了您的问题。但是正如 cmets 所提到的,使用类可以简化事情并且更加灵活。

html

<input id="Amt1" class="rate" type="text">
<input id="Amt2" class="rate" type="text">
<input id="Amt3" class="rate" type="text">
<input id="Amt4" class="rate" type="text">

javascript

$('.rate').on('keyup', function() {
  let result = 0;
  $('.rate').each(function() { result += parseFloat(this.value); });
  $('#TotalInvoiceValue').val(result.toFixed(2));
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-30
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多