gpt4 book ai didi

jquery - IE10 - 文本框属性禁用/启用

转载 作者:行者123 更新时间:2023-12-01 03:39:49 25 4
gpt4 key购买 nike

我有一些文本框,当用户单击其中一个文本框时,所有其他文本框将被禁用。它在 Firefox 中工作正常,我无法理解的是,启用文本框在 IE10 中不起作用(启用时我无法编辑文本框中的值(?)。下面是我的 jquery 代码,我是否缺少IE10 的东西吗?我已经尝试过 .prop('disable', false), .prop('readOnly', false) 但在 IE10 中没有任何效果,但在 Firefox 中没有问题。请帮忙。

文本框onclick事件:

function DisableTboxExceptActiveTxbox(txtbox) {
$('input[id*="tbxQty"]').attr("disabled", true);
$(txtbox).removeAttr("disabled");
}

取消按钮 onclick 事件:

function CancelUpdate(btn) {
$('input[id*="tbxOrderQty_"]').removeAttr('disabled');
}

最佳答案

禁用或启用文本框时应使用 .prop('disabled', true|false),而不是 attr('disabled', true) >removeAttr('已禁用')。所以正确的代码是:

function DisableTboxExceptActiveTxbox(txtbox) {
$('input[id*="tbxQty"]').prop("disabled", true);
$(txtbox).prop("disabled", false);
}

更新:

第一条语句似乎导致 IE 10 和 11 禁用当前文本框,尽管第二行删除了 disabled 属性,但当您开始与文本框。当您在运行代码时查看 DOM Explorer 时,您可以看到这一点。

试试这个代码:

function DisableTboxExceptActiveTxbox(txtbox) {
$('input[id*="tbxQty"]').not(txtbox).prop("disabled", true);
}

另请参阅此 fiddle :http://jsfiddle.net/pX6Kv/2/

这将选择所有文本框,然后过滤掉当前文本框,然后将剩余的文本框设置为禁用。有趣的错误。如果还没有的话,我会将其提交给 Microsoft。

<小时/>

您应该考虑向每个文本框添加一个类,而不是使用 [id*="tbxQty"],因为它在大多数浏览器中速度会更快。

然后,取消更新:

function CancelUpdate(btn) {
$('input[id*="tbxOrderQty_"]').prop('disabled', false);
}

您可能还希望更加一致地缩写“textbox”,如 tbxtxtboxTboxTxbox都用了。只是一个建议:)

关于jquery - IE10 - 文本框属性禁用/启用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24274407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com