![](/img/trans.png)
[英]React: How to update the state of an object when a user selects a value from a drop-down menu?
[英]perform the POST command when the user selects an option from a drop down
我正在設置一個頁面,第一步是讓用戶從下拉菜單中進行選擇。 我不想要求用戶先進行選擇,然后單擊“提交”按鈕,因為此時他們將無其他操作。 這是頁面FORM元素部分中的代碼片段。
<form action="index.php" target="_self" method="post">
<label style:padding:1px margin:0px font-size:12px>Last Name</label>
<select name="UniqueLastNames" onchange="checkField(this.value)">
(the option values are wrapped in php and get their values from a database)
我知道通常這最后一部分將使用type = submit的input元素,但是我只希望POST操作在用戶從列表中做出選擇后立即運行。 Java腳本'checkFidld()返回選定的名稱,當前將其放入我的表單的標簽中,該標簽僅證明下拉列表有效。
我還希望使用POST(而不是GET),以便用戶不能更改url,是的,用戶實際上停留在同一頁面上,並且在頁面刷新時將填充該頁面的其余數據。
據我了解您的問題和評論,您希望用戶從下拉框中選擇值,並且具有不同字段的頁面應相應更新。
// PHP code
$choice = $_GET['userchoice'];
// Get Data from Database and update fields in Page
// In javascript, Use this code.
<script type="text/javascript">
function checkField(val)
{
window.location = "yourpage.html?userchoice="val;
}
</script>
再次,我建議您使用對客戶有更好影響的Ajax。
只要打電話給submit
表單中的方法,一旦你的checkField
函數被調用。 例如:
HTML
<form action="index.php" target="_self" method="post" id="your-form">
<select name="UniqueLastNames" onchange="checkField(this.value)">
...
</select>
</form>
JavaScript的
function checkField(val) {
// do something with your val
document.getElementById('your-form').submit()
}
請注意,我在表單元素中添加了一個ID,因此可以在JavaScript中輕松選擇它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.