请让我知道以下是否是使用 jQuery 将数据发送到另一个页面的正确方法。我是初学者,不确定语法。rowData
是 JSON 格式。我通过单击按钮传递值。
$.post("GridValues.jsp", {"rowData": rowData });
请让我知道以下是否是使用 jQuery 将数据发送到另一个页面的正确方法。我是初学者,不确定语法。rowData
是 JSON 格式。我通过单击按钮传递值。
$.post("GridValues.jsp", {"rowData": rowData });
您的语法POST
取决于 JSP 页面是期望接收 CGI 样式的 URI 编码变量还是 JSON blob。
在前一种(更常见的)情况下,您的代码是正确的 -rowData
变量将显示为需要进行 JSON 解码的 CGI 参数。
如果您希望在$.post
调用完成后让您的客户端代码执行某些操作,那么现代的方法是使用延迟对象:
$.post(...).done(function(data, textStatus, jqXHR) {
// called on success
}).fail(function(jqXHR, textStatus, errorThrown) {
// called on failure
}).always(function() {
// called in both cases
});
Note how using deferred objects exposes features (.fail
and .always
callbacks) that are not directly available using $.post
, which only supports passing a success
(aka done
) handler.
Using the jqXHR
result of $.post
to register callbacks is more flexible than passing callbacks as parameters directly to the AJAX-related methods. It allows you to write functions that are only responsible for initiating the AJAX call and then have handlers that are completely decoupled from that responsible for processing the results.
您的 jquery 调用应该适合您。另外,您可以随时参考 jquery API jQuery.post
jQuery.post( url [, data] [, success(data, textStatus, jqXHR)] [, dataType] )
url 包含请求发送到的 URL 的字符串。
数据与请求一起发送到服务器的映射或字符串。
success(data, textStatus, jqXHR)请求成功时执行的回调函数。
数据类型服务器预期的数据类型。默认值:智能猜测(xml、json、脚本、文本、html)。
试一试,如果您遇到任何问题,请告诉我们。
$.post("GridValues.jsp", {"rowData": rowData }, function(){} );
它和
$.ajax({
type: 'POST',
url: "GridValues.jsp",
data: {"rowData": rowData },
success: function(){}
});
此语法是有效的。
见: http ://api.jquery.com/jQuery.post/
该文档提供了以下语法:
jQuery.post( url [, data] [, success(data, textStatus, jqXHR)] [, dataType] )
您确定不想包含成功处理程序吗?