【问题标题】:how to send hidden field value to the controller formcollection data?如何将隐藏字段值发送到控制器表单集合数据?
【发布时间】:2017-09-07 09:14:22
【问题描述】:

我在 jquery 中使用 var data = new FormData($('form').get(0)); 获取数据。 并使用 ajax 将“数据”对象发送到控制器。我在表单中有一个隐藏字段。如何将该隐藏字段或隐藏字段值附加到“数据”对象?

在检查元素隐藏字段具有disabled="disabled" 属性。如何附加 使用jquery形成数据的具体隐藏字段值?

【问题讨论】:

  • 你给它一个隐藏字段的 id,然后像..$('id') 一样访问它,Alka mam 也把代码放进去,这样可以更正:)
  • 您能提供您的 razor/aspx 标记吗?隐藏字段被禁用的原因是什么?如果在调用 ajax 之前删除该属性,它将与表单一起发送: $( "#hidden-Input-id" ).removeAttr('disabled');如果您不想删除它,可以使用表单和隐藏输入的串联 .serialize() 结果发送到服务器。
  • 使用 $('input[name="inputname"]') 之类的名称在 jquery 中获取其值并将 i 附加到 formData
  • 我在 ajax 调用及其工作之前设置了$( "#hidden-Input-id" ).removeAttr('disabled'); 。谢谢@SamuilPetrov
  • 不包括禁用的字段。隐藏字段是。禁用字段会阻止用户更改它们,用户无法更改隐藏字段(因为它们是隐藏的......)所以根本没有理由禁用隐藏字段。

标签: jquery asp.net model-view-controller


【解决方案1】:

您可以使用$("#HiddenFieldID").val()获取隐藏字段值。

但是如果隐藏字段是放在表单标签里面的。表单数据将包含该隐藏字段值。

以下代码演示了如何从表单数据中获取值。

 $("#FrmSample").submit( function(eventObj) {
      eventObj.preventDefault();
  $("#result").html(new FormData(this));
    var inputs =  $("#FrmSample").serializeArray();
    $.each(inputs, function (i, inputj) {
       console.log(inputj.value);
    });
    
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<body>

<form id="FrmSample" action="#">
  First name:<br>
  <input type="text" name="firstname" value="Mickey">
  <br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse">
  <br><br>
  <input type="hidden" id="HiddenControl" name="HiddenControl"  value="SampleValue">
  <input type="submit" value="Submit">
</form> 
  
</body>
</html>

或者,如果您想附加特定的表单字段值,您可以使用下面的代码。

$("#FrmSample").submit( function(eventObj) {
      $('<input />').attr('type', 'hidden')
          .attr('name', "something")
          .attr('value', "something")
          .appendTo('#form');
      return true;
  });

【讨论】:

    猜你喜欢
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-18
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    相关资源
    最近更新 更多