2015-02-24 39 views
2

我有一個文本框的表單。這個表單使用ajax提交。提交時,我想將文本字段中的數據保存在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變量?有關更多信息,我的應用程序使用bootstrap進行設計。

+0

存儲因爲使用了序列化()功能。 Plz參考這個文檔http://api.jquery.com/serialize/ – 2015-02-24 11:09:07

+0

@hrs:如果我刪除'serialize'然後我得到'對象' – 2015-02-24 11:11:07

+0

你想如何存儲它?換句話說,你期望的輸出格式是什麼? – ArinCool 2015-02-24 11:13:04

回答

1

這裏是你如何能得到您的表單內各個字段的值:

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

謝謝你的回答,真的很感謝它,從我+1。 – 2015-02-24 11:24:48

1

使用serializeArray(),而不是序列化()。

serialize()輸出鍵/值字符串textinput=&textarea=&customName=test7

serializeArray()輸出JSON:

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

新的做法。 – 2015-02-24 11:25:36

3

然後你就可以在變量像這樣

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

感謝您的回覆,我真的很感激。 – 2015-02-24 11:25:05

相關問題