搜尋

首頁  >  問答  >  主體

請求中不會出現已停用的表單輸入項

我的表單中有一些禁用的輸入,我想將它們發送到伺服器,但 Chrome 將它們從請求中排除。

有沒有辦法在不新增隱藏欄位的情況下解決此問題?

<form action="/Media/Add">
    <input type="hidden" name="Id" value="123" />

    <!-- this does not appear in request -->
    <input type="textbox" name="Percentage" value="100" disabled="disabled" /> 

</form>

P粉860897943P粉860897943416 天前697

全部回覆(2)我來回復

  • P粉722409996

    P粉7224099962023-10-15 17:03:45

    使用Jquery並使用ajax發送數據,您可以解決您的問題:

    <script>
    
    $('#form_id').submit(function() {
        $("#input_disabled_id").prop('disabled', false);
    
        //Rest of code
        })
    </script>

    回覆
    0
  • P粉298305266

    P粉2983052662023-10-15 10:30:33

    具有 disabled 屬性的元素不會提交,或者您可以說它們的值未發布(請參閱 用於建立表單資料集的 HTML 5 規範)。

    即,

    <input type="textbox" name="Percentage" value="100" disabled="disabled" />

    僅供參考,依據17.12.1 在 HTML 4 規格:

    1. 停用的控制項不會獲得焦點。
    2. 在選項卡導覽中會跳過已停用的控制項。
    3. 禁用的控制項無法成功發布。

    您可以在您的案例中使用readonly屬性,透過這樣做,您將能夠發佈欄位的資料。

    即,

    <input type="textbox" name="Percentage" value="100" readonly="readonly" />

    僅供參考,依據17.12.2 在 HTML 4 規格:

    1. 只讀元素獲得焦點,但使用者無法修改。
    2. 選項卡式導覽中包含唯讀元素。
    3. 只讀元素已成功發布。

    回覆
    0
  • 取消回覆