zoukankan      html  css  js  c++  java
  • 我常用的js

     JS操作select相关方法:新增 修改 删除 选中 清空 判断存在 等

    1.判断select选项中 是否存在Value="paraValue"的Item
    2.向select选项中 加入一个Item
    3.从select选项中 删除一个Item
    4.修改select选项中 value="paraValue"的text为"paraText"
    5.设置select中text="paraText"的第一个Item为选中
    6.设置select中value="paraValue"的Item为选中
    7.得到select的当前选中项的value
    8.得到select的当前选中项的text
    9.得到select的当前选中项的Index
    10.清空select的项
    -------------------------------------------
    //1.判断select选项中 是否存在Value="paraValue"的Item
    function jsSelectIsExitItem(objSelect,objItemValue)
    {
        
    var isExit = false;
        
    for(var i=0;i<objSelect.options.length;i++)
        
    {
            
    if(objSelect.options[i].value == objItemValue)
            
    {
                isExit 
    = true;
                
    break;
            }

        }
          
        
    return isExit;
    }
     

    //2.向select选项中 加入一个Item
    function jsAddItemToSelect(objSelect,objItemText,objItemValue)
    {
        
    //判断是否存在
        if(jsSelectIsExitItem(objSelect,objItemValue))
        
    {
            alert(
    "该Item的Value值已经存在");
        }

        
    else
        
    {
            
    var varItem = new Option(objItemText,objItemValue);
    //      objSelect.options[objSelect.options.length] = varItem;
            objSelect.options.add(varItem);
            alert(
    "成功加入");
        }
        
    }


    //3.从select选项中 删除一个Item
    function jsRemoveItemFromSelect(objSelect,objItemValue)
    {
        
    //判断是否存在
        if(jsSelectIsExitItem(objSelect,objItemValue))
        
    {
            
    for(var i=0;i<objSelect.options.length;i++)
            
    {
                
    if(objSelect.options[i].value == objItemValue)
                
    {
                    objSelect.options.remove(i);
                    
    break;
                }

            }
            
            alert(
    "成功删除");            
        }

        
    else
        
    {
            alert(
    "该select中 不存在该项");
        }
        
    }


    //4.修改select选项中 value="paraValue"的text为"paraText"
    function jsUpdateItemToSelect(objSelect,objItemText,objItemValue)
    {
        
    //判断是否存在
        if(jsSelectIsExitItem(objSelect,objItemValue))
        
    {
            
    for(var i=0;i<objSelect.options.length;i++)
            
    {
                
    if(objSelect.options[i].value == objItemValue)
                
    {
                    objSelect.options[i].text 
    = objItemText;
                    
    break;
                }

            }
            
            alert(
    "成功修改");            
        }

        
    else
        
    {
            alert(
    "该select中 不存在该项");
        }
        
    }

            
    //5.设置select中text="paraText"的第一个Item为选中
    function jsSelectItemByValue(objSelect,objItemText)
    {    
        
    //判断是否存在
        var isExit = false;
        
    for(var i=0;i<objSelect.options.length;i++)
        
    {
            
    if(objSelect.options[i].text == objItemText)
            
    {
                objSelect.options[i].selected 
    = true;
                isExit 
    = true;
                
    break;
            }

        }
          
        
    //Show出结果
        if(isExit)
        

            alert(
    "成功选中");            
        }

        
    else
        
    {
            alert(
    "该select中 不存在该项");
        }
        
    }


    //6.设置select中value="paraValue"的Item为选中
    //
    document.all.objSelect.value = objItemValue;

    //7.得到select的当前选中项的value
    //
    var currSelectValue = document.all.objSelect.value;

    //8.得到select的当前选中项的text
    //
    var currSelectText = document.all.objSelect.options[document.all.objSelect.selectedIndex].text;

    //9.得到select的当前选中项的Index
    //
    var currSelectIndex = document.all.objSelect.selectedIndex;

    //10.清空select的项
    //
     document.all.objSelect.options.length = 0;


    窗口最大化
    <body onload="window.resizeTo(window.screen.width - 4,window.screen.height-50);window.moveTo(-4,-4)">
    禁止右键
    document.oncontextmenu = function() { return false;}

    禁止保存 <noscript><iframe src="*.htm"></iframe></noscript>
    禁止选取<body oncontextmenu="return false" ondragstart="return false" onselectstart ="return false"
    onselect="document.selection.empty)" oncopy="document.selection.empty)" onbeforecopy=
    "return false"onmouseup="document.selection.empty()>
    禁止粘贴<input type=text onpaste="return false">

     根据宽度换行 style="word-break:break-all"

    //消除图像工具栏
    [/html]
    <IMG SRC="mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false">  
    or 
    <head> 
    <meta http-equiv="imagetoolbar" content="no"> 
    </head> 
    [
    /html]
    //取得控件得绝对位置(1)
    <script language="javascript">  <br />
    function getoffset(e) <br />
    {  <br />
     
    var t=e.offsetTop;  <br />
     
    var l=e.offsetLeft;  <br />
     
    while(e=e.offsetParent) <br />
     
    {  <br />
      t
    +=e.offsetTop;  <br />
      l
    +=e.offsetLeft;  <br />
     }
      <br />
     
    var rec = new Array(1); <br />
     rec[
    0]  = t; <br />
     rec[
    1= l; <br />
     
    return rec <br />
    }
      <br />
    </script> <br />
     [Ctrl
    +A 全部选择 提示:你可先修改部分代码,再按运行] 
    //获得控件的绝对位置(2) 


    oRect 
    = obj.getBoundingClientRect(); 
    oRect.left 
    oRect.

     
    //下载文件 


    function DownURL(strRemoteURL,strLocalURL) 

     
    try 
     

      
    var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP"); 
      xmlHTTP.open(
    "Get",strRemoteURL,false); 
      xmlHTTP.send(); 
      
    var adodbStream=new ActiveXObject("ADODB.Stream"); 
      adodbStream.Type
    =1;//1=adTypeBinary 
      adodbStream.Open(); 
      adodbStream.write(xmlHTTP.responseBody); 
      adodbStream.SaveToFile(strLocalURL,
    2); 
      adodbStream.Close(); 
      adodbStream
    =null
      xmlHTTP
    =null
       
     }
     
     
    catch(e) 
     

      window.confirm(
    "下载URL出错!"); 
     }
     
     
    //window.confirm("下载完成."); 
    }
     

     

    //检验连接是否有效 


    function getXML(URL)  

     
    var xmlhttp = new ActiveXObject("microsoft.xmlhttp"); 
     xmlhttp.Open(
    "GET",URL, false);  
     
    try 
     
    {  
      xmlhttp.Send(); 
     }
     
     
    catch(e){} 
     
    finally  
     

      
    var result = xmlhttp.responseText; 
      
    if(result)  
      

       
    if(xmlhttp.Status==200
       

        
    return(true); 
       }
     
       
    else  
       

        
    return(false); 
       }
     
      }
     
      
    else  
      

       
    return(false); 
      }
     
     }
     
    }


     
     
    //检查网页是否存在 


    function CheckURL(URL) 

      
    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
      xmlhttp.Open(
    "GET",URL, false); 
      
    try 
      
    {  
        xmlhttp.Send();  
        
    var result = xmlhttp.status; 
      }
     
      
    catch(e) {return(false); } 
      
    if(result==200
      
    {  
        
    return true
      }
     
      xmlhttp 
    = null
      
    return false
    }


    1 父子页面的值传递
    两种方式:
         
    1)在父页面可以通过pagename操作子页面。
           pagename 
    = window.open('page ','name','width,height'); pagename.focus();
            在子页面可以通过parents.Label.innerText 
    = '"value"'
         
    2)通过模态对话框返回值。当执行模态对话框时,父页面将停止操作。
            在父页面
              
    var result = showModalDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;help:no;scroll:no;status:no");
              alert(result)
            在子页面
                
    <script language='javascript'>
                      window.returnValue 
    = 'True';
                      window.close()
                 
    </script>
          
    3) 通过vArguments将父窗体的值传递到子窗体
          
    <script>
                 
    var obj = new Object();
                 obj.name
    ="51js";
                 window.showModalDialog   (
    "modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");
           
    </script>
           modal.htm
            
    <script>
                
    var obj = window.dialogArguments
                alert(
    "您传递的参数为:" + obj.name)
              
    </script>
          
    4) 子窗体使父窗体刷新
             opener.window.location.reload();
        
    5) 避免提交时弹出另一个页面
       
    <head>标签里加入<base target="_self">
        
    6) 避免模式窗体不刷新
        Response.Expires 
    = -1
        Response.ExpiresAbsolute 
    = Now() - 1
        Response.cachecontrol 
    = "no-cache"
    2 将javascript值赋给session
         新建一个框架,不让他显示出来。在页面里
         document.all('djTmp').src
    ="djTmp.aspx?name=RoleName&value=" + document.all('cboRole').value
         在框架网页里
            Dim strName As String 
    = Request.QueryString("name")
            Dim strValue As String 
    = Request.QueryString("value")
            Session(strName) 
    = strValue
    3 服务器控件取js值。
        新建一隐藏控件。将其设为服务器端运行,这样通过脚本和服务器都可以访问。

    参考:http:
    //neozhu.cnblogs.com/archive/2005/07/28/201838.aspx
          http://www.phpx.com/happy/showthread.php?threadid=101722&goto=nextnewest
    //==========================================================================
    //
    //
      代码描述:将某个datagrid中模板的中checkbox置为相反状态
    //
     
    //
      传入参数:Form --- 当前页面ID            例:  xt_function_m
    //
                CheckBox  --- 被选择的字符    例:  'CheckBoxSelect'
    //
      
    //
      返回参数:无
    //
    //
    //
    ==========================================================================
    function SelectTitleAll(Form, CheckBox)            
    {
        
    var i
        
    var intLength = Form.elements.length            
                                
        
    for (i = 0; i < intLength; i ++)
        
    {
            
    var strType = Form.elements[i].type
            
    var strName = Form.elements[i].name

            
    if (strType == 'checkbox' && strName.lastIndexOf(CheckBox) == strName.length - CheckBox.length)
            
    {
                Form.elements[i].checked 
    = !Form.elements[i].checked;
            }
            
            
        }
                    
    }


    //==========================================================================
    //
    //
      代码描述:将表单中所有的checkbox都设置为打勾状态
    //
     
    //
      传入参数:Form --- 当前页面ID            例:  xt_function_m
    //
                CheckBox  --- 被选择的字符    例:  'CheckBoxSelect'
    //
      
    //
      返回参数:无
    //
    //
    //
    ==========================================================================
    function SelectAll(Form, CheckBox)            
    {
        
    var i
        
    var intLength = Form.elements.length            
                                
        
    for (i = 0; i < intLength; i ++)
        
    {
            
    var strType = Form.elements[i].type
                    
            
    if (strType == 'checkbox')
            
    {
                Form.elements[i].checked 
    = true;
            }
                        
        }
                    
    }


    //==========================================================================
    //
    //
      代码描述:去除字符串左边空格
    //
     
    //
      传入参数:str --- 去除之前的字符串            例:  ‘ OK’
    //
    //
      
    //
      返回参数:去出以后的字符串
    //
    //
    //
    ==========================================================================
    function jsLTrim(str)
    {
        
    var rtnStr;
        rtnStr
    =""
        
    for (var i = 0; i < str.length; i ++)
        
    {
            
    if (str.charAt(i) != " ")
            
    {
                rtnStr 
    = str.substr(i);
                
    break;
            }

        }

        
    return rtnStr;
    }


    //==========================================================================
    //
    //
      代码描述:去除字符串右边空格
    //
     
    //
      传入参数:str --- 去除之前的字符串            例:  ‘ OK’
    //
    //
      
    //
      返回参数:去出以后的字符串
    //
    //
    //
    ==========================================================================
    function jsRTrim(str)
    {
        
    var rtnStr;
        rtnStr 
    = ""
        
    for (var i = str.length-1; i >= 0; i --)
        
    {
            
    if (str.charAt(i) != " ")
            
    {
                rtnStr 
    = str.substring(0,i+1);
                
    break;
            }

        }

        
    return rtnStr;
    }


    //==========================================================================
    //
    //
      代码描述:去除字符串两边空格
    //
     
    //
      传入参数:str --- 去除之前的字符串            例:  ‘ OK ’
    //
    //
      
    //
      返回参数:去出以后的字符串
    //
    //
    //
    ==========================================================================
    function Trim(str)
    {
        
    return(jsLTrim(jsRTrim(str)));
    }


    //==========================================================================
    //
    //
      代码描述:将回车按键 转为 Tab按键
    //
     
    //
      传入参数:
    //
    //
      
    //
      返回参数:
    //
    //
    //
    ==========================================================================
    function Key_EnterToTab()
    {            
        
    if(event.keyCode == 13)
        
    {                
            event.keyCode 
    = 9;
        }
                    
    }
     
    //==========================================================================
    //
    //
      代码描述:判断日期的大小
    //
     
    //
      传入参数:        Date1      ---日期1                例:'2004-1-1'
    //
      传入参数:        Date2        ---日期2                例:'2004-2-1'
    //
      传入参数:        Compare    ---比较符号            例如 '>','<','='     
    //
      
    //
      返回参数:    bool--是否成立
    //
    //
    ==========================================================================
    function Est_Date(Date1,Date2,Compare)
    {
        
    switch(Compare)
        
    {
            
    case '>':
                
    if (Date1>Date2)
                
    {
                    
    return true;
                }

                
    else
                    
    return false;
                
    break;
            
    case '<=':
                
    if (Date1<=Date2)
                
    {
                    
    return true;
                }

                
    else
                    
    return false;
                
    break;
            
    case '=':
                
    if (Date1==Date2)
                
    {
                    
    return true;
                }

                
    else
                    
    return false;
                
    break;
        }

    }


    //==========================================================================
    //
    //
      代码描述:判断日期的大小
    //
     
    //
      传入参数:        url                        例:www.witehouse.com?bs=over
    //
      传入参数:        参数名称                例:bs
    //
      返回参数:        参数值
    //

    //
    //
    ==========================================================================
    function QueryString(url,sName)
    {
        
    var sSource = url;
        
    var sReturn = "";
        
    var sQUS = "?";
        
    var sAMP = "&";
        
    var sEQ = "=";
        
    var iPos;

        iPos 
    = sSource.indexOf(sQUS);

        
    var strQuery = sSource.substr(iPos, sSource.length - iPos);
        
    var strLCQuery = strQuery.toLowerCase();
        
    var strLCName = sName.toLowerCase();

        iPos 
    = strLCQuery.indexOf(sQUS + strLCName + sEQ);
        
    if (iPos == -1)
        
    {
            iPos 
    = strLCQuery.indexOf(sAMP + strLCName + sEQ);
            
    if (iPos == -1)
            
    return "";
        }


        sReturn 
    = strQuery.substr(iPos + sName.length + 2,strQuery.length-(iPos + sName.length + 2));
        
    var iPosAMP = sReturn.indexOf(sAMP);

        
    if (iPosAMP == -1)
            
    return sReturn;
        
    else
        
    {
            sReturn 
    = sReturn.substr(0, iPosAMP);
        }


        
    return sReturn;
    }


    //==========================================================================
    //
    //
      代码描述:判断多行文本框的是否超出字符
    //
     
    //
      传入参数:        txt                         例:form.alltxt 多行文本框对象
    //
      传入参数:        maxlen                        例:30 允许最大的多行文本的长度
    //
      返回参数:        无
    //
    //
    //
    ==========================================================================
    function JudTxtValue(txt,maxlen)
    {
        
    if (txt.value.length>maxlen)
        
    {
            alert('文本框输入超出'
    +maxlen+'个长度');
            txt.value
    =txt.value.substr(0,maxlen);        
        }

    }
    5,在客户端javascript里操作服务端控件:
    this.Button1.Attributes.Add("onclick","return upchang();");
     
    function upchang() 

     
    var i=document.Form1.all['ListBox1'].selectedIndex;
     
    if(i>0
     

      
    var val=document.Form1.all['ListBox1'].item(i-1).value; 
      
    var txt=document.Form1.all['ListBox1'].item(i-1).text; 
     
      document.Form1.all['ListBox1'].item(i
    -1).value=document.Form1.all['ListBox1'].item(i).value;
      document.Form1.all['ListBox1'].item(i
    -1).text=document.Form1.all['ListBox1'].item(i).text;
     
      document.Form1.all['ListBox1'].item(i).value
    =val; 
      document.Form1.all['ListBox1'].item(i).text
    =txt; 
     
      document.Form1.all['ListBox1'].selectedIndex
    =i-1;
     }

    }

  • 相关阅读:
    centos8 docker podman冲突问题技术就是要不断折腾 时刻踩坑
    systemd upstart sysvinit
    warden创建容器的过程
    Linux彩色输出
    cloudfoundry warden安装和配置
    The Architecture of Open Source Applications: Audacity
    The Architecture of Open Source Applications: Asterisk
    [转]查看dd的拷贝进度
    The Architecture of Open Source Applications Berkeley DB
    libcurl的段错误
  • 原文地址:https://www.cnblogs.com/ghd258/p/272214.html
Copyright © 2011-2022 走看看