我想将我的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中怎么可能? 请帮忙
感谢!!!
答案 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属性