我正在尝试从我页面上的所有textareas收集信息,然后将这些信息放入一个数组中,以便我可以通过ajax / json发送到服务器。
虽然我不太清楚如何去做。
我不确定如何从
中提取我需要的信息这是我到目前为止所做的:
我的HTML示例
"<textarea id='tbObjective_" + counter + "' name='txtObjective' class='objectives' sequence='" + counter + "'></textarea>"
jQuery的:
var objectiveList = [];
$('.objectives').each(function (objective) {
objectiveList.push({
id: objective.id,
sequence: objective.sequence,
text: objective.val()
});
});
$.ajax({
type: "POST",
url: url,
dataType: "json",
data: objectiveList
});
任何帮助将不胜感激
由于
答案 0 :(得分:2)
您可以继续以下步骤。我已经将python django和html5用于此目的
1. make a text box which is hidden and after generating your json document set it in this text box (suppose id of textbox is "submit_json") than use
$("#submit_json").val(JSON.stringify(formData, null, '\t')), // (formData, null, '\t') this is js function that i have written for the ourpose
data = JSON.stringify({"jsonDoc":Generated JSON})
console.log(data);
$.ajax({
url: 'http://127.0.0.1:8000/catchjson/',
type: 'POST',
async: false,
contentType: 'application/json',
data: data,
dataType: 'json',
processData: false,
success: function(data){
alert('Done')
//Goto Next Page
},
error: function(jqXHR, textStatus, errorThrown){
alert("Some Error!")
}
})
现在在服务器上你可以抓住这个json如果你有问题从你的文本框创建json让我知道
答案 1 :(得分:1)
您可以使用$.param(objectiveList)
答案 2 :(得分:1)
我经常使用:
var formData = $("form").serialize();
通过ajax发布数据,所以也许你可以试试:
var textareaData = $(".objectives").serialize();
$.ajax({
type: "POST",
url: url,
dataType: "json",
data: textareaData
});
或者确保所有字段都在表单元素中并使用第一个示例。