栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

aui上的ajax:选择liferay

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

aui上的ajax:选择liferay

您似乎根本没有意识到HTTP和Web应用程序是如何工作的。您必须了解请求/响应周期。

AJAX对您来说是您想做的事情的正确名称,但是正如名称所言,AJAX是异步 Javascript-
您尝试将java方法调用放在onchange属性中。这行不通。

要首先执行您要的操作,您必须找到您的Portlet类,并实现

serveResource(ResourceRequest req,ResourceResponse resp)
方法,在该方法中您将收到选定的值(
String selectedVal =req.getParameter("selectedVal")
),并根据该值返回一些值。

String result = null; if ("blah".equals(selectedVal))  { result = "Something"; } else   { result = "Something Else"; } resourceResponse.getPortletOutputStream().write(result.getBytes("UTF-8"));

然后,您必须对该方法进行AJAX调用。应该大致如下所示:

<portlet:resourceUrl var="resourceUrl"><portlet:param name="selectedVal" value="PARAM_PLACEHOLDER_SELECTED_VAL" /></portlet:resourceUrl><aui:script use="io">function ajax<portlet:namespace />MySelect(selectedVal) {        A.io( '${resourceUrl}'.replace("PARAM_PLACEHOLDER_SELECTED_VAL", selectedVal), {     on: {         success: <portlet:namespace />processResponse(select, response);     } }        );function <portlet:namespace />processResponse(response) {alert("Here's what java pre returned:"+response+". Do whatever you want with it - with javascript");}</aui:script>...<aui:select label="My Selection" name="ms" id="ms" onchange="ajax<portlet:namespace>MySelect(this.values[this.selectedIndex])" >    <%    for(String item : itemList){     %>    <aui:option selected="<%= item.equals(selItem) %>" value="<%=item%>"><%=item%></aui:option>  <%}%></aui:select>

希望这可以帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/594841.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号