zoukankan      html  css  js  c++  java
  • js中for循环的问题

        今天过来加班,运行了一下以前写的代码,竟然有问题,出错的地方是由于一段js代码引起的:
        

     1string scriptA = @"
     2                    <script>
     3                    var s ;
     4                    var sNun ;
     5                    var controlNum ;
     6                    var chkother= document.getElementsByTagName('input');
     7                    for (var i=0;i<chkother.length;i++)
     8                    {
     9                        if( chkother[i].type=='submit')
    10                        {
    11                            if(chkother[i].id.indexOf('btnSubmit')>-1)
    12                            {
    13                              
    14                                  s = chkother[i].id.split('_'); 
    15                                  controlNum = s[s.length-1] ;
    16                                  break ;
    17                            }
    18                        }
    19                    } ";
    20            if( ViewState["PersonType"].ToString() != "" )
    21            {
    22                scriptA += @" var controlUserId = 'userName_'+s[s.length-1]+'_Value1' ;
    23                   var userIdValue =  document.all['AppOpinion_list1_'+controlUserId].value ;
    24                   document.all.AppOpinion_list1_hiddMan.value = userIdValue;  ";
    25            }

    26                   
    27            scriptA += @"  var controlRaesonId = 'txtOPinion_'+s[s.length-1]; 
    28            var reasonValue =  document.all['AppOpinion_list1_'+controlRaesonId].value ;
    29            document.all.AppOpinion_list1_hiddoValue.value = reasonValue;
    30                
    31            var j =0;
    32            for (var i=0;i<chkother.length;i++)
    33            {
    34                    if(chkother[i].id.indexOf('AppOpinion_list1_radiobtnResule_'+s[s.length-1])>-1)
    35                    {
    36                        j++;
    37                        if( chkother[i].checked )
    38                        {
    39                                    sNun = j ;
    40                            }
    41                    }
    42            }
    43            document.all.AppOpinion_list1_hiddResult.value = sNun;
    44            document.all.AppOpinion_list1_btnInsertFlow.click();
    45            </script>";
    46        Page.RegisterStartupScript("EA",scriptA);

        在for循环中没有增加break的时候,s[s.length-1]的值在先后的调用中会不同,这点就比较郁闷,增加break语句跳出循环,就不会存在该问题,值的改变也只是在if语句中,而且确认一个数据符合if语句,虽然问题解决了,但是还不知道原因,以后在找找原因了,mark。。。
  • 相关阅读:
    百度云推送
    web请求报出 “超过了最大请求长度” 【注意:重启IIS】
    页面多个Jquery版本共存的冲突问题,解决方法!
    Web Api 中使用 PCM TO WAV 的语音操作
    Web Api 如何做上传文件的单元测试
    那些年收集的前端学习资源
    原创: 做一款属于自己风格的音乐播放器 (HTML5的Audio新特性)
    Web Api 接口文档制作
    如何在Asp.Net WebApi接口中,验证请求参数中是否携带token标识!
    JavaScript 面试题,给大家补补基础,加加油,埋埋坑!
  • 原文地址:https://www.cnblogs.com/oldhorse/p/564396.html
Copyright © 2011-2022 走看看