管理者がデータベーステーブルから項目を選択して詳細を更新できる管理システムを構築しています。これを達成するために2ページに2つの書式があります。最初のフォームは、テーブルからアイテムを選択し、IDを2番目のページに渡します。ここで、IDを使用して、phpを使用してテーブルから詳細を取得します。私はjavascriptでこれをしたいので、ページを更新しません。私の質問は、この値をどのように渡すかです。私は次のコードを使用していますが、動作していません。JavaScriptを使用して入力テキスト値を別のページに渡す方法
HTML
<div id="result"></div>
<form action="update_item.php" id="update" method="post" >
<select name="selected" class="form-control" id="myItem" required>
<option>Select item</option>
<?php
<!-- PHP script to select the item -->
?>
</select>
<button id="submit">Select</button>
</form>
JAVASCRIPT
$(document).ready(function() {
$("#submit").click(function() {
var chat = $('#myItem').val();
if(chat=='')
{
alert("Please select an item!");
}
else{
$.ajax({
type: "POST",
url:"update_item.php",
data:{
data:chat,
},
success: function (msg) {
//alert(msg):
$('#result').html(msg);
},
error: function(){
alert('error');
}
});
}
});
});
PHP 2ページ目
$item_id = $_POST['data'];
$get_item = "select * from items where item_id='$item_id'";
<--PHP script continues-->
あなたは2つのページと2つのフォームがあります。「javascriptでこれを行いたいので、ページを更新しません」ここに何かがありません。これにより、ページのリロード/ポストを回避することはできません。「選択済み」と表示されます。 Cookieやwindow.localStorageを使って設定を思い出したり、クエリパラメータを使って次のページ(醜い)に渡すことができます:?option = 2実際には、このような簡単な作業のために2ページは必要ないと思います。 – Codebeat