我正在尝试删除电话号码 (999) 999-9999 中的文字,使其成为另一个隐藏输入值中的 9999999999。
这可以使用 .val() 函数来完成,还是只能向隐藏输入添加更多值?
电话 1= (999) 999-9999
电话应该有这个值= 9999999999
$('#phone1').bind('keypress blur', function() {
$('#phone').val($('#phone1').val() + ' ' );
});
我正在尝试删除电话号码 (999) 999-9999 中的文字,使其成为另一个隐藏输入值中的 9999999999。
这可以使用 .val() 函数来完成,还是只能向隐藏输入添加更多值?
电话 1= (999) 999-9999
电话应该有这个值= 9999999999
$('#phone1').bind('keypress blur', function() {
$('#phone').val($('#phone1').val() + ' ' );
});
简单字符串的基本思想
var str = "(999) 999-9999 ";
var newStr = str.replace(/\D/g,"");
console.log(newStr);
现在写你所做的最好的方法是
$('#phone1').on('blur', function() { //jQuery 1.7.2+ use on, not bind
var txtBox = $(this);
txtBox.val( txtBox.val().replace(/\D/g,"") );
});
$('#phone1').on('keypress blur', function() {
$('#phone').val(this.value.replace(/[^\d]/g, "") + ' ' );
});
您需要replace [MDN]方法。这将为您完成大部分工作:
$('#phone').val($('#phone1').val().replace(/\D/g, ''));
第一个参数可以是子字符串或正则表达式。在示例中,我将正则表达式用于“不是数字”。