我试图通过jquery从数组中找到电话号码和手机号码。
jQuery的:
var data = $('#PhoneLabel').text();
var array = data.split(', ');
$.grep(array, function (item, index) {
if (item.charAt(0) === '0' && item.charAt(1) === '9') {
var mob = item;
$('#UserMobMenuSMS').attr('href', 'sms:' + mob);
$('#UserMobMenuTel').attr('href', 'tel:' + mob);
alert('its mobile');
} else if (item.charAt(0) !== '0' && item.charAt(1) !== '9') {
$('#UserMobMenuSMS').addClass('disableUserMenuMob');
$('#UserMobMenuSMS').attr('href', '#');
alert('there is no mobile');
} else {
var phone = item;
$('#UserMobMenuTel').attr('href', 'tel:' + phone);
alert('its phone');
}
});
如果号码以09
开头,则为手机号码,否则为电话号码。并且html中有3个表单:
首先,只有电话号码:
不工作
<span id="PhoneLabel" class="GlobalTelColor">021-88915907 , 021-88915907</span>
秒,电话号码和手机号码:
运作良好
<span id="PhoneLabel" class="GlobalTelColor">09127007008 , 021-55293301-6 , 021-55293003</span>
第三,仅限手机号码
运作良好
<span id="PhoneLabel" class="GlobalTelColor">09195328272</span>
问题出在第一种形式,如果阵列中没有移动电话号码,我想在#UserMobMenuTel
中使用电话号码,并在#UserMobMenuSMS
级别停用disableUserMenuMob
。我的意思是,如果没有手机号码UserMobMenuSMS
应该获得disableUserMenuMob
课程,但它不起作用,我想我在这种情况下使用了错误的方法,有没有更好的方法和解决方案?
请查看 JSFiddle 演示。
答案 0 :(得分:1)
在那里改了一下。将disableUserMenuMob
类添加为intial,然后在找到移动设备时删除Class。如果没有找到手机,请不要做任何事情。
你有3个if if开关,我觉得2对你想要的就足够了