【发布时间】:2014-09-15 15:55:04
【问题描述】:
我有一个liferay portlet 应用程序和一些jQuery 自动完成程序。这工作正常,但我想传递一些额外的参数。我知道名称,所以我用参数创建了一个 resourceURL:
<portlet:resourceURL id="street" var="jsonStreetResourceUrl">
<portlet:param name="controller" value="true"/>
<portlet:param name="term" value="termValue"/>
<portlet:param name="userTerm" value="userTermValue"/>
</portlet:resourceURL>
我的 page.tag 有一些简单的自动完成代码
$(document).ready(function() {
$("#${comp}\\.targetField").each(function() {
var that = this;
$(that).autocomplete({
source: function(request, response) {
$.ajax({
url : "${controllerURL}",
dataType : "json",
data : {
term : request.term,
userTerm: ????????
},
success : function(data) {
response($.map(data.members, function(item) {
return {
label: item.name,
value: item.name
}
}))
}
})
},
});
});
});
是否可以将任何 userTerm 传递给我的控制器?当我试图在控制器中获取参数时,我总是得到 userTermValue。
String term = PortletRequestUtils.getStringParameter(request, "term"); // user defined value
String userTerm= PortletRequestUtils.getStringParameter(request, "userTerm"); // =userTermValue
我想使用类似的东西:
userTerm: $("#${comp}\\.infoHolder").val()
我阅读了一些文章,发现我不能拥有动态数量的参数,但可以拥有动态的参数值吗?
【问题讨论】:
标签: java jquery liferay jquery-autocomplete