ホームページ  >  記事  >  ウェブフロントエンド  >  ページ間で値を転送する JavaScript メソッド_JavaScript スキル

ページ間で値を転送する JavaScript メソッド_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 16:05:111048ブラウズ

この記事の例では、JavaScript がページ間の値の転送を実装する方法について説明します。皆さんの参考に共有してください。詳細は以下の通りです。

質問は次のとおりです:

a.html ページでは、ff9c23ada1bcecdd1a0fb5d5a0f18437 の onsubmit イベントがメソッド foo() を呼び出して、b.html ページを開き、同時にパラメーターを b.html に渡します。メソッド foo() では、変数パラメータを b.html ページに渡す必要があります。b.html ページはパラメータ値を受け入れますが、サーバー側のテクノロジは使用できません。

ソリューションのコードは次のとおりです:

a.html ページは次のとおりです:

<html>
<head>
  <title> demo </title>
  <meta name="Author" content="xugang" />
  <script type="text/javascript">
  function foo(){
   var a ="abc"; // a为变量值
   var str = "b.html&#63;id="+a+";";
   //alert(document.frm.action);
   //方案一(无效)
   // document.frm.action = str;
   //方案二(无效)
   // window.location.href = str;
   //方案三(有效)
   window.location.replace(str);
   return false;
  }
 </script>
</head>
<body>
   <FORM name="frm" method="get" 
   onsubmit = "return foo()" >
      <INPUT TYPE="SUBMIT" />
   </FORM>
</body>
</html>

注: b.html ページが事前に存在している必要があります。

b.html パラメータ値を取得するコードは次のとおりです。

コードの b.html 部分

var getQueryString = function(name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return r[2]; return "";
}

補足:

myjs.js コード:

function foo(){ 
    var str = "abc"; 
    //document.forms[0].hid.value = str; 
    var frm = window.event.srcElement; 
    frm.hid.value = str; 
    return true; 
}

.html コード:

<html> 
<head> 
 <title> demo </title> 
 <meta name="Author" content="xugang" /> 
 <script src="myjs.js"></script> 
</head> 
<body> 
 <FORM name="frm" METHOD="get" ACTION="b.html" 
 onsubmit="return foo()"> 
  <INPUT TYPE="hidden" id="hid" name="hid"> 
  <INPUT TYPE="submit" value="提交"> 
 </FORM> 
</body> 
</html>

注: b.html ページに値を渡すときは、b.html ページがすでに存在している必要があります。

b.html コード:

<HTML> 
 <HEAD> 
  <TITLE> New Document </TITLE> 
 </HEAD> 
 <BODY> 
  <SCRIPT LANGUAGE="JavaScript"> 
   document.write(decodeURIComponent(location.search.substr(3)));
  </SCRIPT> 
 </BODY> 
</HTML>

この記事が皆様の JavaScript プログラミング設計に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。