Javascript 如何:浏览器向服务器发送JSON?
我有一个Javascript 如何:浏览器向服务器发送JSON?,javascript,json,ajax,forms,Javascript,Json,Ajax,Forms,我有一个。我想将该表单(或其他HTML)中的特定数据元素剥离出来,将它们形成JSON,然后将该JSON作为请求发送到域服务器,服务器将在其中使用它 执行上述工作时,JavaScript看起来像什么 注意:我不需要COR(例如,没有跨站点,都是同一台服务器)以表单获取数据 您可以对表单使用serializeArray。您只需要以正确的方式解析它。下面提供了一个示例方法 $.fn.serializeObject = function() { var o = {}; var a = t
。我想将该表单(或其他HTML)中的特定数据元素剥离出来,将它们形成JSON,然后将该JSON作为请求发送到域服务器,服务器将在其中使用它
执行上述工作时,JavaScript看起来像什么
注意:我不需要COR(例如,没有跨站点,都是同一台服务器)以表单获取数据 您可以对表单使用
serializeArray
。您只需要以正确的方式解析它。下面提供了一个示例方法
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
行动中的例子:
获取HTML元素中的内容
您可以使用document.getElementById
方法,然后使用innerHTML
属性来获取div或其他内容
var MyDiv1 = document.getElementById('DIV1');
var content = MyDiv1.innerHTML;
使用jQuery将对象发布到服务器
function sendData() {
$.ajax({
url: '/example',
type: 'POST',
contentType: 'application/json',
data: <Your JSON Object>,
dataType: 'json'
});
}
函数sendData(){
$.ajax({
url:“/示例”,
键入:“POST”,
contentType:'应用程序/json',
数据:,
数据类型:“json”
});
}
感谢您快速给出的精彩答案!以下是我到目前为止得到的:code
$(函数(){$('form').submit(函数(){$SendData(JSON.stringify($('form').serializeObject());返回false;})$(函数sendData(form_data){$.ajax({url:'/my_data',type:'POST',contentType:'application/json',data:form_data,dataType:'json'});});我对JavaScript完全是新手,所以如果这是一个非常错误的问题,请原谅。:-)抱歉--我还不知道如何在响应中格式化代码请用更新修改您的第一篇文章。从那里我可以更好地说明我的答案。嗨,汤姆!是的,上面的那个帖子真难看!我道歉。我还不知道如何格式化这些位以正确显示。然而我能够让一切顺利进行。您的答案,再加上对工作代码的进一步研究!再次感谢!