如何将javascript变量传递给jsp文件liferay

时间:2014-11-19 07:12:49

标签: java javascript liferay liferay-6

我想将我的javascript变量传递给jsp文件。这怎么可能? 以下是我的代码

<script type="text/javascript">
function js_alert(selected){

    var selectText=selected.options[selected.selectedIndex].text;
    alert(selectText);
}
</script>

我想在后面的标签

中传递selectText
<aui:input name="demo" label="???" type="text" id="demo" />

liferay中怎么可能? 请帮忙

感谢!!!

2 个答案:

答案 0 :(得分:2)

您需要portlet命名空间。 从aui:input中,您将获得一个简单的输入字段,该输入字段的ID将是 portletnamespace + yourAuiInputName

我认为这个脚本在jsp上,所以这可以工作。

document.getElementById('<portlet:namespace />demo').value = selectText;

如果这个js不在jsp上,而是在一个单独的js文件中。您必须在参数中传递命名空间。

function js_alert(selected, namespace){

var selectText=selected.options[selected.selectedIndex].text;
alert(selectText);
document.getElementById(namespace+'demo').value = selectText;

}

<script>
   js_alert(selected, <portlet:namespace />);
</script>

编辑: 从aui:input中删除ID字段。这将由aui标签生成。 在liferay 6.2中,当我使用短结尾时,我遇到了很多问题。 如果你使用像这样的aui标签会更好:

<aui:input name="yourname" label="yourlLabel">
</aui:input>

答案 1 :(得分:0)

document.getElementById(&#39; demo&#39;)。value = selectText;

从aui:input标记中删除ID属性