gpt4 book ai didi

javascript - 使用 Jquery 将类添加到 TextBox 时出现问题

转载 作者:太空宇宙 更新时间:2023-11-03 21:13:27 26 4
gpt4 key购买 nike

基本上我正在研究一个简单的功能。但是当我尝试将 addClass 添加到任何 HTML 元素时卡在了某个部分,它不起作用。

我有两个 HTML 元素

  1. DocType 下拉列表
  2. DocNumber 的文本框。

根据 DocType 中的选定值,我需要更改 DocNumber 的类,它将处理 DocNumber 文本框的验证部分。

这是我的脚本代码。

$(document).ready(function () {
$(".number").keydown(function (e) {
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13]) !== -1 ||
(e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 && e.keyCode <= 40)) {
return;
}
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
e.preventDefault();
}
});
});

$('#ddlDoctype').on('change', function () {
var validateCriteria = $(this).find("option:selected").val();
if (validateCriteria == "A") {
$("#txtDocNumber").addClass("minSize[8]");
$("#txtDocNumber").addClass("number");
$("#txtDocNumber").removeClass("minSize[12]");
} else if (validateCriteria == "E") {
$("#txtDocNumber").addClass("minSize[12]");
$("#txtDocNumber").removeClass("minSize[8]");
$("#txtDocNumber").addClass("number");
} else if (validateCriteria == "C") {
$("#txtDocNumber").removeClass("number");
} else {
$("#txtDocNumber").removeClass("number");
}
});

这里需要注意的一件好事是,当我将 minSize[8] 添加到文本框时,它会被分配,但数字类没有被分配给文本框。当我在 watch 中添加该部分时,我得到的结果是 number 类正在分配,但它不工作并且允许用户也输入字母。

即使尝试了很多方法来解决这个问题,我也无法摆脱它。如果可以提供任何帮助,我将不胜感激。

最佳答案

您需要在文档中准备好更改事件,并且需要将 .number 的 keydown 事件注册为 on

       $(document).ready(function () {
$(document).on('keydown', '.number', function (e) {
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13]) !== -1 ||
(e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 && e.keyCode <= 40)) {
return;
}
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
e.preventDefault();
}
});
$('#ddlDoctype').on('change', function () {
var validateCriteria = $(this).find("option:selected").val();
if (validateCriteria == "A") {
$("#txtDocNumber").addClass("minSize[8]");
$("#txtDocNumber").addClass("number");
$("#txtDocNumber").removeClass("minSize[12]");
} else if (validateCriteria == "E") {
$("#txtDocNumber").addClass("minSize[12]");
$("#txtDocNumber").removeClass("minSize[8]");
$("#txtDocNumber").addClass("number");
} else if (validateCriteria == "C") {
$("#txtDocNumber").removeClass("number");
} else {
$("#txtDocNumber").removeClass("number");
}
});
});

关于javascript - 使用 Jquery 将类添加到 TextBox 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44320934/

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