javascript对变量通过数组获取

  • A+
所属分类:前端技术
摘要

今天在处理质量信息系统问题的时候,发现了一个问题,就是通过javascript用数组的方式获取其中的值的时候,在IE下会存在不能获取到的情况,其他的浏览器测试都是正常的,先看看情况:

今天在处理质量信息系统问题的时候,发现了一个问题,就是通过javascript用数组的方式获取其中的值的时候,在IE下会存在不能获取到的情况,其他的浏览器测试都是正常的,先看看情况:

1、


<script type="text/javascript">
 $().ready(function(){
 $('#report_name0').hide();
 $('#report_name1').hide();

 <?php if (isset($flagPidCount)){
 if ($projs[$flagPidCount]['description'] == '内销')$flag="0";
 else $flag="1";
 echo "$('#report_name$flag').show();";
 }else{?>
 $('#report_name<?php if ($projs[0]['description'] == '内销')echo "0";else echo "1";?>').show();
 <?php }?>
 $("select[name = 'proj_id']").change(function(){
 var s="";
 s=$("select[name='proj_id']").find('option:selected').val();
 alert(s);
 if(s[0] == '内'){//专业的获取在IE7中是无效的
 $('#report_name0').show();
 $('#report_name1').hide();
 }else{
 $('#report_name0').hide();
 $('#report_name1').show();
 }
 });
 });
</script>

wuxiao

所以我们的更改策略为,必须改为数组形式,将变量直接转为数组,然后通过数组获取因此,就有了下面的代码:


<script type="text/javascript">
 $().ready(function(){
 $('#report_name0').hide();
 $('#report_name1').hide();

 <?php if (isset($flagPidCount)){
 if ($projs[$flagPidCount]['description'] == '内销')$flag="0";
 else $flag="1";
 echo "$('#report_name$flag').show();";
 }else{?>
 $('#report_name<?php if ($projs[0]['description'] == '内销')echo "0";else echo "1";?>').show();
 <?php }?>
 $("select[name = 'proj_id']").change(function(){
 var s="";
 s=$("select[name='proj_id']").find('option:selected').val();
 var array = s.split(',');
 if(array[0] == '内销'){
 $('#report_name0').show();
 $('#report_name1').hide();
 }else{
 $('#report_name0').hide();
 $('#report_name1').show();
 }
 });
 });
</script>

经过测试这样可以完美解决!

  • 我的微信
  • 加我请备注缘由
  • weinxin
  • 我的微信公众号
  • 轻松随便关注
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

关闭震动