gpt4 book ai didi

javascript - 从输入文本框中清除(或更改)输入掩码(使用 Jasny)

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:03:22 25 4
gpt4 key购买 nike

我希望根据在选择列表中选择的值更改文本框上的输入掩码。代码是:

$(document).ready(function () {
$("#searchList").change(function () {
$("#searchCriteria").val("");

var value = $(this).find("option:selected").val();

switch (value) {
case "2":
$("#searchCriteria").inputmask({ mask: '999999', placeholder: '' });
break;
default:
alert('default'); // this alert pops up.
$("#searchCriteria") ///I want to clear the mask here.
}
});
});

我试过了

$("#searchCriteria").unmask(); 

但出现“未捕获类型错误:$(...).unmask 不是函数”错误。

文档说“?”说“后面的任何字符都将成为可选的”所以我试过了 $("#searchCriteria").inputmask({ mask: '?', placeholder: '' });

没有成功。

似乎一旦设置了掩码,就无法更改或清除它,但我确信有办法。

我也试过 $("#searchCriteria").unbind();

它清除了掩码,但不会将其设置为其他任何东西。

编辑:我并不局限于使用 Jasny,欢迎任何其他建议:)

我要满足的要求是“根据下拉列表中的选择更改输入文本框上的输入掩码”。

最佳答案

从这个 SO 问题中找到答案:

How can I "reset" <div> to its original state after it has been modified by JavaScript?

本质上,将克隆的状态存储在一个变量中,并在重新分配掩码之前使用该变量将元素恢复到其原始状态。

代码现在看起来像这样,switch 语句已经消失,但这是出于不相关的原因:

$(document).ready(function () {

var searchCriteriaClone = $("#searchCriteria").clone();

$("#searchList").change(function () {
$("#searchCriteria").val("");
$("#searchCriteria").replaceWith(searchCriteriaClone.clone());

var value = $(this).find("option:selected").val();

if (value === "2") {
$("#searchCriteria").inputmask({ mask: "999999", placeholder: "" });
}
});
});

关于javascript - 从输入文本框中清除(或更改)输入掩码(使用 Jasny),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30869957/

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