C# 表单提交后如何从输入掩码中删除文字?
我正在ASP.NET3.5WebForm应用程序中使用JoshBush的用于jQuery的MaskedInput插件 表单提交后,如何摆脱代码隐藏文件中的文字 例如:带有掩码(“#txtPhone”).mask(“(99)9999-9999”)的电话输入代码> 在代码隐藏中:C# 表单提交后如何从输入掩码中删除文字?,c#,asp.net,jquery,maskedinput,C#,Asp.net,Jquery,Maskedinput,我正在ASP.NET3.5WebForm应用程序中使用JoshBush的用于jQuery的MaskedInput插件 表单提交后,如何摆脱代码隐藏文件中的文字 例如:带有掩码(“#txtPhone”).mask(“(99)9999-9999”)的电话输入 在代码隐藏中: string customerPhone = txtPhone.Text 它返回我:(12)3456-7890 但这就是我想要的:1234567890 在这个例子中,它说我可以使用mask()方法,不带任何参数来归档它。但如何
string customerPhone = txtPhone.Text
它返回我:(12)3456-7890
但这就是我想要的:1234567890
在这个例子中,它说我可以使用mask()
方法,不带任何参数来归档它。但如何从背后的代码中做到这一点
编辑
我的问题不清楚,所以:我想向服务器发送未屏蔽的值。如何做到这一点?您可以在.NET中用正则表达式去掉非数字字符,如下所示:
customerPhone = new string(customerPhone.ToCharArray()
.Where(c => char.IsDigit(c)).ToArray());
customerPhone = Regex.Replace(customerPhone, "[^0-9]", "");
submitHandler: function(form) {
$("#txtPhone").val($("#txtPhone").mask());
form.submit();
},
我现在正在做的是,使用
submitHandler
(验证插件)重置输入值,如下所示:
customerPhone = Regex.Replace(customerPhone, "[^0-9]", "");
submitHandler: function(form) {
$("#txtPhone").val($("#txtPhone").mask());
form.submit();
},
这解决了问题,但气味非常难闻…初始化inputmask时,将removeMaskOnSubmit设置为true
$("#txtPhone").inputmask({removeMaskOnSubmit: true});
或者,我们可以使用此函数获取未屏蔽的值
$("#txtPhone").inputmask('unmaskedvalue');
这个解决方案是针对同一个插件的吗?我的digitalBush掩码版本(1.4.1)在jquery集合上没有.inputmask()函数。