這裏是解決方案,它是建立你JSON字符串。它獲取文本字段的值,複選框,並選擇元素:
function buildRequestStringData(form) {
var select = form.find('select'),
input = form.find('input'),
requestString = '{';
for (var i = 0; i < select.length; i++) {
requestString += '"' + $(select[i]).attr('name') + '": "' +$(select[i]).val() + '",';
}
if (select.length > 0) {
requestString = requestString.substring(0, requestString.length - 1);
}
for (var i = 0; i < input.length; i++) {
if ($(input[i]).attr('type') !== 'checkbox') {
requestString += '"' + $(input[i]).attr('name') + '":"' + $(input[i]).val() + '",';
} else {
if ($(input[i]).attr('checked')) {
requestString += '"' + $(input[i]).attr('name') +'":"' + $(input[i]).val() +'",';
}
}
}
if (input.length > 0) {
requestString = requestString.substring(0, requestString.length - 1);
}
requestString += '}';
return requestString;
}
你可以這樣調用該函數:
buildRequestStringData($('#mainDiv'))
而結果http://jsfiddle.net/p7hbT/
你已經採取了看看'.serialize()'(http://api.jquery.com/serialize/)?這是否符合您的賬單?如果不是,爲什麼? – PPvG 2011-12-21 10:56:08