更改变量脚本

问题描述 投票:0回答:1

我使用此代码在ExpirationTime具有值时禁用ValidUntil字段,此问题仅在我进行更改时才起作用但在编辑记录时不起作用,是否有任何方法可以修改此代码以始终禁用Validuntil如果Expirationtime具有值?

$('#x_ExpirationTime').on('change', function() {
if(this.value.length > 0)
$('#x_ValidUntil').attr('disabled','disabled');
else
$('#x_ValidUntil').removeAttr('disabled');
}); 

提前致谢

javascript jquery
1个回答
1
投票

您需要在没有change操作的情况下执行事件内的代码,以使其自行运行。你有几个选择:

  1. 强制执行事件: $('#x_ExpirationTime').on('change', function() { }).change(); 在事件绑定结束时添加change()以在页面初始化后执行它。它会像用户改变它一样工作;
  2. 在函数中分隔事件主体: function checkValue() { let $input = $('#x_ValidUntil'); if($('#x_ExpirationTime').val().length > 0) $input.attr('disabled','disabled'); else $input.removeAttr('disabled'); } $('#x_ExpirationTime').on('change', checkValue); checkValue(); checkValue()的孤立调用将成为魔术。

两种方式都会有相同的结果。

© www.soinside.com 2019 - 2024. All rights reserved.