输入字段格式数据不同 - 取决于输入的数据类型
我有一个输入字段,该字段链接到可以带有邮编或城市的数据库。问题是,邮编需要在一定的格式,即输入字段格式数据不同 - 取决于输入的数据类型
CB30AX
cb30ax
sg120js
SG120JS
资本化是不是一个真正的问题,但不能包含任何空格...随着研究,我设法这个脚本如下放在一起:
<script>
//make sure postcode goes in correct format
$(document).ready(function()
{
$('input[name="sCity"]').change(function(){
var postCode = $(this).val();
$(this).val(postCode.replace(/\s/g, '').toUpperCase())
})
});
</script>
但是其中大写所有字母和完全删除空间,在英国也有城市,如:Leigh On Sea
,Canvey Island
其中有一个空间,所以上面的代码将它做成一个字。我怎样才能使代码检测输入是否可以是一个城市或一个邮政编码(也许验证了一个邮政编码,如果返回true它然后相应格式? 提前感谢!
这里是一个FIDDLE
如果有“重号,则认为它是一个邮政编码,否则它是一个城市的名字
http://jsfiddle.net/0zdd6cr3/2
$('input[name="sCity"]').change(function() {
var postCode = this.value.toUpperCase();
if(/\d/.test(postCode)) postCode = postCode.replace(/\s/g, '');
$(this).val(postCode);
});
感谢您的解决方案,我现在将在现场网站上尝试此操作。如果我想要利用城市的第一个字母怎么样?所以如果有人进入canvey岛,它会返回Canvey岛? – 2014-08-27 08:56:44
@ben_dchost - 哦,所以如果它是一个城市,你只能把第一个字母大写? – 2014-08-27 08:57:39
如果有可能我会更喜欢它,但它不是必须:) – 2014-08-27 09:00:40
唯一格式上'blur' /'change'输入;如果出现的号码,然后假定它是一个邮政编码,否则它是一个城市名称。 http://jsfiddle.net/0zdd6cr3/1/ – 2014-08-27 08:48:03