0

我正在使用支柱。我的 ActionForm 在其中设置了一个 ArrayList,我如何从 JSP 访问该数组,ActionForm 在 jQuery 中由控制器在单击按钮时发送到该数组。这样我就可以遍历该数组的元素。我猜它是这样的,但这是在黑暗中刺伤(这是行不通的)。

$('myButton').click(function(){
    var myArrayToLoopThrough = $('myForm.myArray');
    for(){
        //looping stuff
    }
}
4

4 回答 4

0

jQuery 对 JSP 生成的 HTML 进行操作。

因此,请使用 Firebug for Firefox 之类的工具在浏览器中查看生成的 HTML。

然后,您可以使用 jQuery 来选择和迭代 HTML 元素。以下是最有用的东西的基本语法:

选择一个身份证$("#id")

按班级选择$(".class")

按 HTML 标签选择$("p")$("span")

迭代选择

$(...something...).each(function(){
   // this is the DOM element
   // $(this) is a jQuery object containing the DOM element
});

关于选择器的官方 jQuery 文档


编辑

根据您的评论,您似乎正在寻找一种与服务器对象而不是生成的 HTML 进行通信的方法。

Javascript(jQuery 是用 Javascript 编写的)是一种只能与生成的 HTML 交互的 Web 浏览器语言。您的 Java 对象不会发送到浏览器。

如果您确实需要从服务器检索数据,那么您需要一个新的 HTTP 请求来检索这些数据。这可以使用AJAX 方法在 jQuery 中完成。

于 2010-11-18T15:08:30.617 回答
0

您可能想检查一下.serializeArray()。您可以将表单中的所有数据放入一个不错的对象中,这样您就可以对数据做您想做的事情。

jQuery .serializeArray() 文档

var data = $('#form-id').serializeArray();

现在您可以循环遍历data. 键是namevalue

于 2010-11-18T15:14:50.380 回答
0

这是你要找的吗?

$('.myButton').click(function(e) {
    var data = $(this).closest('form').serializeArray();
    for( var i = 0; i < data.length; i++ ) {
        var field = data[i];
        console.log( field.name + '=>' + field.value );
    }
});
于 2010-11-18T16:13:56.217 回答
0

使用jQuery获取表单输入字段?

于 2010-11-18T16:17:45.177 回答