我可以为此提供代码,但我认为不需要。
我在联系表单中有州/国家/地区下拉列表。选择州/国家/地区后,我有一个电话字段。当选择美国号码时,我有一个脚本来格式化数字,就像标准美国号码一样。但是,如果您在输入后选择非美国国家/地区,则会删除您在电话字段中输入的条目,因为它会更改格式。
有没有办法可以编写一个JQuery脚本来保存变量中的数字,并在更改国家/州后字段后写回数字?
我用来格式化数字的插件是http://digitalbush.com/projects/masked-input-plugin/
答案 0 :(得分:1)
var origPhone = $('input#phone').val();
..do reset of form..
$('input#phone').val(origPhone);
这假设您的手机输入具有以下html:
<input id="phone" />
只要你用jQuery选择它就可以真正成为你想要的任何东西。
答案 1 :(得分:0)
您可以在更改国家/地区状态时保存该值。在美国时,你可以检索到这个值。
有点像,试着解决。
var phoneNumber;
$("#contrystate").change(function(e){
if($("#phonefield").val() && $("#contrystate").val()!=codeUSA){
phoneNumber = $("#phonefield").val();
}
else if($("#contrystate").val()==codeUSA){
$("#phonefield").val(phoneNumber);
}
});
答案 2 :(得分:0)
$("select").change(function() {
var $selected = $(this).find("option:selected");
var inputval = $("input").val();
if (!$("option:first", this).is(":selected")) {
$("#input").mask($selected.val());
$("#input").val(inputval).focus();
}
});
<input id="input" type="text">
<select>
<option> Select Format</option>
<option value="999 999">999 999</option>
<option value="99 99">99 99</option>
</select>