尝试在网址上发布一些数据:“
$(function() {
var frm = $(document.myform);
var data = "?lm_po_id=154668&authentication=ThisisAuth&description=ThisIsDesc";//JSON.stringify(frm.serializeArray());
//var data = JSON.stringify(frm.serializeArray()); // Also tried this
alert(data + "I am about to POST this:\n\n" + data);
$.postJSON = function (url, data, callback) {
$.ajax({
'url': frm.attr("action"),
'type': 'post',
'processData': false,
'data': JSON.stringify(data),
contentType: 'application/json',
success: function (data) { callback(JSON.parse(data)); },
});
};
});
这正确地调用了正确的函数,但是当我在调试模式下检查它时,所有参数都有空值,有人可以帮助我做错了什么。 这是我的HTML表单
<form action="http://192.168.0.124:8080/Ilex-WS/service/ilexmobile/poImageUpload" name="myform" method="post" enctype="multipart/form-data">
<input type="text" value="158664" name="lm_po_id" /><br />
<input type="text" value="AuthCodeMD5" name="authentication" /><br />
<input type="text" value="584" name="imagenumber" /><br />
<input type="text" value="ImgName.png" name="name" /><br />
<input type="text" value="This is desc" name="description" /><br />
<input type="file" value="" name="uploadedimage" /><br />
<input type="button" value="Submit" onclick="javascript:document.myform.submit()"/><br />
</form>
提前致谢....
答案 0 :(得分:3)
您的JavaScript唯一能做的就是提醒字符串。
您永远不会将事件处理程序绑定到表单的提交方法,即使您这样做也不会触发,因为您使用form.submit()
提交表单而不是提交按钮。 (因此,这提交了编码数据而不是JSON编码数据)。
你将一个函数存储在$.postJSON
中,但你永远不会调用它,并且它有一个名为data
的局部变量,无论如何都会掩盖var data = "?lm_po...
(并不是说它有意义使用该值,因为它是一个字符串,您在JSON.stringify
上运行data
。