Heim >Web-Frontend >js-Tutorial >Detailliertes Beispiel dafür, wie Javascript Funktionen und reguläre Ausdrücke verwendet, um statische Seitenparameterwerte zu erhalten
Um die übergebenen Werte der statischen HTML-Seitenparameter zu erhalten, können Sie die Split-Funktion verwenden, um Arrays entsprechend den Parametern aufzuteilen und reguläre Ausdrücke zu verwenden, um sie zu erhalten. Die spezifische Implementierung ist wie folgt
Beispiel 1Verwenden Sie reguläre Ausdrücke, um Get zu erhalten
var LocString = String(window.document.location.href); function getQueryStr(str) { var rs = new RegExp("(^|)" + str + "=([^&]*)(&|$)", "gi").exec(LocString), tmp; if (tmp = rs) { return tmp[2]; } // parameter cannot be found return ""; }
Methode aufrufen
document.getElementById("user").value = getQueryStr("user"); document.getElementById("password").value = getQueryStr("password"); document.getElementById("sysno").value = getQueryStr("sysno");
Beispiel 2 Verwenden Sie die Split-Funktion, um in Arrays zu schneiden nach Parametern
<script> urlinfo=window.location.href; //获取当前页面的url len=urlinfo.length;//获取url的长度 offset=urlinfo.indexOf("?");//设置参数字符串开始的位置 newsidinfo=urlinfo.substr(offset,len)//取出参数字符串 这里会获得类似“id=1”这样的字符串 newsids=newsidinfo.split("=");//对获得的参数字符串按照“=”进行分割 newsid=newsids[1];//得到参数值 alert("您要传递的参数值是"+newsid); </script>
Aber Sie müssen bedenken, dass diese Methode nur für URLs nützlich ist, die Parameter enthalten. Wenn die andere Partei die POST-Methode zum Übergeben von Parametern verwendet, enthält die URL keine Parameter, daher diese Technik ist nur für die GET-Methode oder URLs nützlich, die Parameter angeben
Unten sehen Sie ein vollständiges Beispiel
aa.htm ist die Parametereingabe- und Infiltrationsschnittstelle
bb.htm ist die Parameterempfangs- und -verarbeitungsschnittstelle
aa.htm
<html> <head> </head> <body> <script> function submit() { var input1 = document.getElementById("inputid"); window.open("bb.htm?inputStr=" + input1.value);//传入参数 } </script> <input type = "text" id = "inputid"> <input type = "button" onclick = "submit()" value = "提交"> </body> </html> bb.htm: <html> <head> <script> //获得参数的方法 var request = { QueryString : function(val) { var uri = window.location.search; var re = new RegExp("" +val+ "=([^&?]*)", "ig"); return ((uri.match(re))?(uri.match(re)[0].substr(val.leng th+1)):null); } } </script> </head> <body> <script> //调用方法获得参数 var rt = request.QueryString("inputStr"); alert(rt); </script> </body> </html>
bb.htm
<html> <head> <title>test</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <SCRIPT LANGUAGE="JavaScript"> <!-- var request = { QueryString : function(val) { var uri = window.location.search; var re = new RegExp("" +val+ "=([^&?]*)", "ig"); return ((uri.match(re))?(uri.match(re)[0].substr(val.leng th+1)):null); } } var a = request.QueryString ("a"); var b = request.QueryString ("b"); var c = request.QueryString ("c"); if ((a != null)){a=a} else{a="参数A空"} if ((b != null)){b=b} else{b="参数B空"} if ((c != null)){c=c} else{c="参数C空"} document.writeln("参数A: " + a); document.writeln("<br>参数B: " + b); document.writeln("<br>参数C: " + c); //--> </SCRIPT> </head> <body> <form name="form1" action="?"> 请输入参数值:<br> <SCRIPT LANGUAGE="JavaScript"> document.writeln("A:<input type='text' name='a' value='"+a+"'><br>"); document.writeln("B:<input type='text' name='b' value='"+b+"'><br>"); document.writeln("C:<input type='text' name='c' value='"+c+"'><br>"); </SCRIPT> <input type="submit" name="Submit" value="提交参数查观效果"> </form> </body> </html>
Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel dafür, wie Javascript Funktionen und reguläre Ausdrücke verwendet, um statische Seitenparameterwerte zu erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!