You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中JS修改表单input值后提交请求无法获取对应值如何解决

问题根因

你设置了disabled属性的表单字段,浏览器提交表单时默认不会携带该字段的参数,这是HTML表单的标准规则,和JS赋值逻辑、Laravel后端逻辑无关。


可选解决方案

方案1:替换disabled为readonly(最便捷)

readonly属性的效果是用户无法手动编辑输入框,和disabled的视觉效果接近,但表单提交时会正常携带字段值,直接修改input标签属性即可,原有JS赋值逻辑不需要做任何修改:

<input id="found" value="" type="text" placeholder="Found" name="found" readonly>
<input id="serie" type="text" placeholder="Serie" name="serie" readonly value="">
<input id="subserie" type="text" placeholder="Sub-Serie" name="subserie" readonly value="">

方案2:保留disabled属性,新增隐藏字段同步值

如果业务必须保留输入框的disabled状态,可以新增三个同名的hidden类型输入框,JS赋值时同时给两个输入框赋值:

<!-- 原有disabled输入框保留,用于页面展示 -->
<input id="found" value="" type="text" placeholder="Found" name="found" disabled>
<!-- 新增隐藏输入框,用于提交参数 -->
<input type="hidden" name="found" id="found_hidden">

JS代码同步修改:

case 'fondo':
    $('#found').val(estructure.est);
    $('#found_hidden').val(estructure.est);
    break;
// serie、subserie两个字段同理修改

方案3:表单提交前临时取消disabled属性

监听表单提交事件,提交前先把这几个字段的disabled属性移除,提交完成后可按需恢复:

$('form').submit(function () {
  $('#found, #serie, #subserie').prop('disabled', false);
  return true;
})

内容的提问来源于stack exchange,提问作者salva garcia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 03:15:02