zoukankan      html  css  js  c++  java
  • html网页如何传递接收地址参数?

      1 实现html页面的参数传递
      2   
      3 方法一:
      4 下面是javascrīpt的一种实现方法, 这个函数是通过window.location.href中的分割符获得各个参数。
      5 有了这个函数,就可以在页面之间传递参数了。
      6 /*
      7 *函数功能:从href获得参数
      8 *sHref:   http://www.artfh.com/arg.htm?arg1=d&arg2=re
      9 *sArgName:arg1, arg2
     10 *return:    the value of arg. d, re
     11 */
     12 function GetArgsFromHref(sHref, sArgName)
     13 {
     14       var args    = sHref.split("?");
     15       var retval = "";
     16      
     17       if(args[0] == sHref) /*参数为空*/
     18       {
     19            return retval; /*无需做任何处理*/
     20       }  
     21       var str = args[1];
     22       args = str.split("&");
     23       for(var i = 0; i < args.length; i ++)
     24       {
     25           str = args[i];
     26           var arg = str.split("=");
     27           if(arg.length <= 1) continue;
     28           if(arg[0] == sArgName) retval = arg[1]; 
     29       }
     30       return retval;
     31 }
     32 方法二:
     33 html地址传递参数进行其他事情.
     34 <scrīpt>
     35 /* 用途: 接收地直栏参数 取id=1 根据ID的值 */
     36 urlinfo=window.location.href; //获取当前页面的url
     37 len=urlinfo.length;//获取url的长度
     38 offset=urlinfo.indexOf("?");//设置参数字符串开始的位置
     39 newsidinfo=urlinfo.substr(offset,len)//取出参数字符串 这里会获得类似“id=1”这样的字符串
     40 newsids=newsidinfo.split("=");//对获得的参数字符串按照“=”进行分割
     41 newsid=newsids[1];//得到参数值
     42 newsname=newsids[0];//得到参数名字
     43 </scrīpt>
     44 方法三:
     45 <SCRIPT LANGUAGE="JavaScript">
     46 function getvalue(name){
     47     var str=window.location.search;   //location.search是从当前URL的?号开始的字符串 例如:http://www.51job.com/viewthread.jsp?tid=22720 它的search就是?
     48 tid=22720
     49     if (str.indexOf(name)!=-1){           
     50         var pos_start=str.indexOf(name)+name.length+1;
     51         var pos_end=str.indexOf("&",pos_start);
     52         if (pos_end==-1){
     53             alert( str.substring(pos_start));
     54         }else{
     55             alert("对不起这个值不存在!");
     56         }
     57     }
     58 </SCRIPT>
     59 方法四:
     60 做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的html中用js获取当取地址栏的一个Object。 
     61 里面有三个方法: 
     62 1、request.QueryString("参数")//获取指定参数,返回字符串; 
     63 2、request.QueryStrings();//获取全部参数,并返回数组; 
     64 3、request.setQuery("参数","参数的值");//如果当前地址栏有此参数,那么将更新此参数,否则返回一个新的地址栏参数字符串。 
     65 例如: 
     66 当前地址栏参数字符串为:?name=a&site=never_online 
     67 alert(request.setQuery("name","blueDestiny")) 
     68 如果地址栏参数中有"name",那么返回?name=blueDestiny&site=never_online 
     69 setQuery方法有自动追加参数的功能。如: 
     70 当前地址栏参数字符串为:?site=never_online 
     71 alert(request.setQuery("name","blueDestiny")) 
     72 则返回?site=never_online&name=blueDestiny 
     73 同理,如果地址栏没有参数,也会自动追加参数 
     74 alert(request.setQuery("name","blueDestiny")) 
     75 返回?name=blueDestiny 
     76 <SCRIPT LANGUAGE="JavaScript"> 
     77 <!-- 
     78 // author: never-online 
     79 // web: never-online.net 
     80 var request = { 
     81 QueryString : function(val) { 
     82 var uri = window.location.search; 
     83 var re = new RegExp("" +val+ "=([^&?]*)", "ig"); 
     84 return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null); 
     85 }, 
     86 QueryStrings : function() { 
     87 var uri = window.location.search; 
     88 var re = /w*=([^&?]*)/ig; 
     89 var retval=[]; 
     90 while ((arr = re.exec(uri)) != null) 
     91 retval.push(arr[0]); 
     92 return retval; 
     93 }, 
     94 setQuery : function(val1, val2) { 
     95 var a = this.QueryStrings(); 
     96 var retval = ""; 
     97 var seted = false; 
     98 var re = new RegExp("^" +val1+ "=([^&?]*)$", "ig"); 
     99 for(var i=0; i<a.length; i++) { 
    100 if (re.test(a[i])) { 
    101 seted = true; 
    102 a[i] = val1 +"="+ val2; 
    103 } 
    104 } 
    105 retval = a.join("&"); 
    106 return "?" +retval+ (seted ? "" : (retval ? "&" : "") +val1+ "=" +val2); 
    107 } 
    108 } 
    109 alert(request.setQuery("e","b")) 
    110 //--> 
    111 </SCRIPT>
  • 相关阅读:
    关于jstl.jar引用问题及解决方法
    React 解析/ 第二节 使用 Reac
    NOde.js的安装和简介
    JACOB调用控件函数
    Linux 常用命令
    webService接口发布失败问题
    CommonsMultipartFile---用Spring实现文件上传
    验证签名(章)是否有效的方法
    新起点,新征程
    使用C#正则表达式获取必应每日图片地址
  • 原文地址:https://www.cnblogs.com/liuxiaoming123/p/7494125.html
Copyright © 2011-2022 走看看