我有一个带有一个文本字段的表单。此表单使用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 :(得分:3)
然后你可以存储像这样的变量
var variable_name= $(this).find('textarea[name="your_textarea_name"]').text();
答案 1 :(得分:1)
以下是如何获取表单中各个字段的值:
$('form.form-horizontal').find(':input[name="customName"]').val();
答案 2 :(得分:1)
使用serializeArray()代替serialize()。
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"
}
]