使用javascript将逻辑添加到下拉框

时间:2019-05-15 19:17:23

标签: javascript

JavaScript对我来说是非常新的,所以我很惊讶地做到了这一点。但是现在我在前进的道路上遇到了障碍。

我在MVC5 / C#中有一个“编辑”视图。有一个下拉菜单,用户可以在其中更新订单状态。我想更新库存现货变化(仅当用户从下拉列表中选择“完成”时)为原始库存减去订单金额。而且,我让这部分工作。

但是现在,我意识到我需要更多的逻辑。如果用户选择了意外完成(并且减去了订单中的库存),但是突然意识到自己选择了意外完成,现在将其更改为“处理中”,该怎么办?

我该如何扭转刚做的事情?第一个onchange事件已完成,因此值不再相同。如果发生这种情况,我不确定如何将其恢复原样。它将发生。

这是我的onchange下拉菜单的jscript,其中“ Remaining”是保存OnHand减去订购金额的文本框的ID。而“ OnHand”是当前手头的元素ID。效果很好,但是我不确定如何在需要时添加其他逻辑以退后一步。

  $("[name='CheckStatus']").change(function () {
     if ($(this).val() == 'Complete') {
          var contents = document.getElementById('Remaining').value;
          $("#OnHand").val(contents);
     }
  });

1 个答案:

答案 0 :(得分:0)

所以,我被骗了。我继续前进,并添加了一个隐藏字段,以保留现有内容的原始值。 。然后我在代码中添加了第二个IF(如下所示),它的工作方式与我想要的一样。我认为有更好的方法可以做到这一点。 。但目前至少已经完成了工作。

  if ($(this).val() == 'Complete') {
    var contents = document.getElementById('Remaining').value;
        $("#OnHand").val(contents);                                   
    }

  if ($(this).val() !== 'Complete') { 
      var contents = document.getElementById('OrigStock').value;
         $("#OnHand").val(contents);                                    
    }