搜尋

首頁  >  問答  >  主體

Javascript 提交不包含提交按鈕值

好吧,這不是一個問題,而只是為了我的信息(因為我可以想到大約4 種不同的解決方法可以使其工作。但是我有一個表單(沒什麼特別的),但是提交按鈕有與之相關的特定值。

<input type='submit' name='submitDocUpdate' value='Save'/>

提交表單後,我會檢查該名稱。

if(isset($_POST['submitDocUpdate'])){ //do stuff

但是,有一次我嘗試透過 Javascript 提交表單,而不是提交按鈕。

document.getElementById("myForm").submit();

除了 1 個問題外,一切正常。當我查看透過 javascript 方法提交的 $_POST 值時,它不包括 SubmitDocUpdate。我獲得了表單的所有其他值,但沒有獲得提交按鈕值。

就像我說的,我可以想出幾種方法來解決它(使用隱藏變量,檢查另一個表單變量上的isset 等),但我只是想知道這是否是Submit() 的正確行為,因為對我來說這似乎不太直觀。提前致謝。

P粉957661544P粉957661544485 天前569

全部回覆(2)我來回復

  • P粉131455722

    P粉1314557222023-10-23 00:29:15

    使用 jQuery 1.0 或更高版本:

    $('input[type="submit"]').click();

    #

    當我偶然發現這篇文章時,我實際上正在解決同樣的問題。不帶任何參數的 click() 會在您選擇的任何元素上觸發點擊事件: http://api.jquery.com/click/

    回覆
    0
  • P粉466290133

    P粉4662901332023-10-23 00:26:28

    是的,這是 HTMLFormElement.submit()

    的正確行為

    未發送提交按鈕值的原因是 HTML 表單的設計是為了發送被點擊(或以其他方式啟動)的提交按鈕的值。這允許每個表單有多個提交按鈕,例如您需要「預覽」和「儲存」操作的場景。

    由於您以程式設計方式提交表單,因此在單一提交按鈕上沒有明確的使用者操作,因此不會發送任何內容。

    回覆
    0
  • 取消回覆