我有一些新闻对象:
List<News> news = new ArrayList<News>();
在我的jsp文件中,我使用Struts的迭代器来显示我的List的前6个元素。
<s:iterator id="iter" value="news" begin="0" end="5">
<p><s:property value="title" /></p>
</s:iterator>
假设我的页面上有一个“加载更多”按钮,按下后会增加6个元素。我想要这个按钮将我的迭代器的'end'属性更改为11.是否可以使用jQuery执行此操作?
也许是这样的:
$(document).ready(function() {
$("a#button").on('click', function(e) {
var end = $(.iter).attr('end');
end += 6;
return true;
});
});
如果没有,最好的选择是什么?
谢谢
答案 0 :(得分:0)
您的jsp
代码(以及struts )在服务器上运行,生成的HTML
将发送到客户端。
Javascript在客户端中运行( Node.js
类似环境除外) - 它无法访问驻留在服务器中的JSP
。 AFAIK,您不能像使用JavaScript那样简单地使用JavaScript修改struts属性。
jQuery
是一个javaScript库,因此也不可能使用jQuery执行此操作。
您可以使用querystring参数向服务器发送请求,指示它是加载更多请求,并相应地重新生成页面(更改struts参数,查询或其他任何内容< / em>的)
或者,您可以点击按钮向服务器发送AJAX请求,获取结果并更新页面。
对于这两种情况,您需要编写相应的服务器端代码。仅使用客户端脚本无法完成此操作。