我怎样才能访问通过jQuery请求发送的变量?
-
26-09-2019 - |
题
我使用的支柱。我的ActionForm有一个ArrayList在它成立的,我怎么能访问从JSP的阵列在ActionForm是由控制器发送到jQuery中点击一个按钮。这是这样我就可以通过该阵列的元件回路。我猜它是这样的,但是这是一个在黑暗中刺(没有工作)。
$('myButton').click(function(){
var myArrayToLoopThrough = $('myForm.myArray');
for(){
//looping stuff
}
}
解决方案
jQuery的操作上通过您的JSP生成的HTML
因此,看一下在使用像萤火虫的Firefox的工具,浏览器生成的HTML。
然后,可以使用jQuery在HTML元素选择和迭代。下面是最有用的东西的基本语法:
:选择一个ID 强>:$("#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相互作用。您的Java对象不被发送到浏览器。
如果您确实需要从服务器获取数据,那么你需要为了获取这些数据的新的HTTP请求。这可以在使用的jQuery要做的 AJAX方法的。
其他提示
您可能想看看.serializeArray()
。你可以从表格中的所有数据到一个不错的对象,所以你可以做你想做的数据是什么。
var data = $('#form-id').serializeArray();
现在可以遍历data
。键是name
和value
。
这是你要找的是什么?
$('.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 );
}
});
不隶属于 StackOverflow