【问题标题】:How to store form data in an ajax variable?如何将表单数据存储在 ajax 变量中?
【发布时间】:2015-02-24 11:05:46
【问题描述】:

我有一个带有一个文本字段的表单。此表单使用 ajax 提交。提交时,我也想将文本字段中的数据保存在 ajax 变量之一中。下面是我的代码。

<script>
 $(function() {
//twitter bootstrap script
 $("button#submit").click(function(){
         $.ajax({

     type: "POST",
 url: "PastSurgicalCustomItem",
 data: $('form.form-horizontal').serialize(),
         success: function(msg){

        var $data = $('form.form-horizontal').serialize();

         var $firstDiv = $('<div></div>');
         $firstDiv.attr("class","col-md-3");


         var $secondDiv = $('<div></div>');
         $secondDiv.attr("class","checkbox history_checkbox_div");
         $secondDiv.appendTo($firstDiv);

         var $label = $('<label></label>');
         $label.appendTo($secondDiv);

         var $checkBox = $('<input></input>');
         $checkBox.attr("type","checkbox");
         $checkBox.attr("class","history_checkbox");
         $checkBox.attr("id",msg);
         $checkBox.appendTo($label);

         var $span = $('<span></span>');
         $span.text($data);
         $span.appendTo($label);

         $firstDiv.appendTo($('#customDiv'));


         },
 error: function(){
 alert("failure");
 }
       });
 });
});
</script>

但这并没有奏效。如果我插入数据“test7”,那么$data 变量将包含以下内容

textinput=&textarea=&customName=test7

如何正确地将文本框中的数据获取到 ajax 变量?有关更多信息,我的应用程序是使用引导程序设计的。

【问题讨论】:

  • 因为你使用了 serialize() 函数。请参考本文档api.jquery.com/serialize
  • @hrs:如果我删除serialize,那么我会得到object
  • 你想如何存储它?换句话说,您期望的输出格式是什么?
  • 你到底想要什么?
  • 你心目中的“ajax 变量”是什么? :)

标签: javascript jquery ajax twitter-bootstrap


【解决方案1】:

然后你可以像这样存储在变量中

var variable_name= $(this).find('textarea[name="your_textarea_name"]').text();

【讨论】:

  • 感谢您的回复。对此,我真的非常感激。来自我的 +1。
【解决方案2】:

以下是获取表单中各个字段值的方法:

$('form.form-horizontal').find(':input[name="customName"]').val();

【讨论】:

  • 感谢您的回答。真的很感激。来自我的 +1。
【解决方案3】:

使用serializeArray() 代替serialize()。

serialize() 输出一个键/值字符串textinput=&amp;textarea=&amp;customName=test7

serializeArray() 输出一个 JSON:

[
  {
    name: "a",
    value: "1"
  },
  {
    name: "b",
    value: "2"
  },
  {
    name: "c",
    value: "3"
  },
  {
    name: "d",
    value: "4"
  },
  {
    name: "e",
    value: "5"
  }
]

【讨论】:

  • 新的做法。来自我的 +1。
猜你喜欢
  • 1970-01-01
  • 2011-04-17
  • 2018-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多