0
我试图将我的HTML表单数据转换为JSON对象以便通过Ajax提交 它似乎“工作”,但我没有得到我想要的JSON格式。可能有与HTML表单数据转换为简单的JSON对象
JSON.stringify($("#frm_login").serializeObject())
的JSON输出我得到做的是这样的:
[{"name":"username","value":"mike"},{"name":"password","value":"test123"}]
但JSON输出我真的想为这个简单的东西,类似于:
{
"username":"mike",
"password":"test123"
}
下面是我的简单的HTML和Ajax代码:
<form id="frm_login" class="ui-body ui-body-a ui-corner-all" data-ajax="false">
<label for="username">Username:</label>
<input type="text" name="username" id="username" value="" />
<label for="password">Password:</label>
<input type="password" name="password" id="password" value="" />
<input type="button" data-theme="b" name="btn_login" id="btn_login" value="Login">
</form>
我的Ajax代码:
$(document).on('click', '#btn_login', function(){
var url = 'http://localhost/proto01/api/users/token';
$.ajax({
url: url, dataType: "json", async: true,
type: "POST",
headers: { Accept : "application/json; charset=utf-8", "Content-Type": "application/json; charset=utf-8" },
data: JSON.stringify($("#frm_login").serializeObject()),
success: function (result) {
alert("Success");
},
error: function (request,error) {
alert('Network error has occurred please try again!' + error);
}
});
});
尝试此http://计算器。 com/questions/11376184/jquery-serializearray-key-value-pairs – Dhiraj
[this fiddle](http://jsfiddle.net/csaq7sjt/)似乎显示你正在寻找的json,不确定你的'serializeObject'确实,我的是从这个答案复制:http://stackoverflow.com/a/1186309/526704 – DLeh