簡體   English   中英

當用戶從下拉菜單中選擇一個選項時,執行POST命令

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM