0

jquery 看起来像这样

    $.post('JSP/processForm.jsp', $("#Form").serialize(),
          function(data){
          //I want to iterate through every line in the data object returned here.

   });

我搜索并尝试了:

$.each($(data), function(key, value) {
      alert(value);
});

但这没有用。我知道响应需要首先编码到一个 jQuery 对象中。

$(data)

但我似乎无法找到一种方法来遍历每一行。jsp代码很简单:

out.println("Test");
out.println("Test Email");
out.println("Test CellPhone");
out.println("305-777-5587");
4

1 回答 1

1

需要注意的几点:

  • 您的 jsp 可能会被渲染并返回一个表明它是 html 内容的标题。您(有点武断地)决定每一行新的文本代表一个新的数据。
  • jQuery 每个文档都显示它仅适用于集合,因此不需要 jQuery 包装您的对象。(http://api.jquery.com/jQuery.each/) 但是,jQuery 没有将返回的 html 解析为 javascript 集合对象的方法。
  • 如果您真的想以 javascript 结构化数据对象结束,您可以考虑将输出作为 JSON(javascript 对象表示法)发送。从我所看到的情况来看,它似乎更适合这种情况。

如果您确实想以这种方式继续,则需要编写一些 javascript 以在新行处拆分您的响应 html。它可能看起来像这样(你可能需要玩弄它)

var myData = data.split(/\r\n|\r|\n/);
于 2012-06-18T20:41:39.780 回答