我想将我的 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怎么可能呢? 请帮忙
谢谢!!!
最佳答案
您需要 portlet namespace 。 从 aui:input 你会得到一个简单的输入字段,该输入字段的 ID 将是 portlet 命名空间+您的 Aui 输入名称
我认为这个脚本在 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>
关于java - 如何将 javascript 变量传递给 jsp 文件 liferay,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27011054/