2017-09-22 2 views
0

ナビゲーション後にテキストボックスに入力値を保持します。ここで私のコードを説明しています。次のページから次のページにナビゲートするときのテキスト入力の値を保持する方法

**main.php** 

<html> 
    <head></head> 
    <body> 
     <input type="text" id="myname" value=""> 
     <a href="next.php" id="second.php">Next</a> 
    </body> 
</html> 

**next.php** 

<a href="main.php">Back</a> 

「ボタン」フィールドはここでは使用しません。リンクのナビゲーションでは、入力した値をテキストボックスフィールドに保持します。私はPHP、htmlを使用しています

+0

まず、「

」タグを付けます。それらの仕組みを見てください。次に、あなたの 'input'タグは' next.php'でそれを見つけることができるようにするための名前が必要だと思います。 – Peter

+0

いいえ動作しません... –

答えて

0

あなたはクッキー/セッションでそれを保存する必要があります。

0

localStorageも使用できます。ここでread more

0
<form id="myform" name="myform" method="POST" action="next.php"> 
     <input type="text" name="query" id="query"> 
    <a href="javascript: submitform();">Submit</a> 
     </form> 
<script type="text/javascript"> 
function submitform(){ 
    // alert('form submit'); 
document.forms["myform"].submit(); 
}  </script> 

へのリンクだとnext.php $_SESSION['last_search_term'] = $_REQUEST['query']; echo $_SESSION['last_search_term'];

にこれは動作します。私はそれをチェックしました

0

私はクッキーを使用します。 セッションとOperaのバックボタンはよく一緒に動作しません。

クッキーレスの解決策が必要な場合は、「window.name」文字列を使用できます。永続的な値、つまり値はページ間のナビゲーションに保持されます。必要なボタンは不要です。

終了コード</body>の前にこのコードを追加するだけです。

<script> 
// on navigation to, or back: load users input from previous page (if any) 
    document.getElementById("myname").value = window.name; 
// save value on navigation out 
    window.onbeforeunload = function() { 
    window.name = document.getElementById("myname").value; 
    return; 
    } 
</script> 

テキストフィールドに同じIDを指定すると、両方の/すべてのページで同じjを修正せずに使用できます。

上記の基本的なコード例は、すべての最新のブラウザとほとんどの古いブラウザ(2013年以降のOperaも含む)で動作するはずです。イベントリスナを使用するように変更して、必要に応じて空の値などを確認します。

関連する問題