如何从p:对话头属性引用javascript变量
How to refer to javascript variable from p:dialog header attribute
我有一个变量header_title在java脚本
<script type="text/javascript">
var dialog_label;
function update_dialog_label(arg){
dialog_label = arg;
}</script>
现在,我想这样使用dialog_open
<p:dialog widgetVar="nodeDetail" width="520" header="{dialog_label}">
如何使用dialog_label设置标题?
谢谢。
如果您更喜欢使用javascript var而不是bean属性:
jsf代码:<p:dialog id="infoDialog" widgetVar="infoDialog" header="Local title" width="400">
something
</p:dialog>
<input type="button" value="showDialog" onclick="showDialog()"></input>
代码:
<script type="text/javascript">
var globalTitle = "Global title";
function showDialog(){
var header = $("#infoDialog".concat("_title"));
header.text(globalTitle);
infoDialog.show();
}
</script>
代码B:
<script type="text/javascript">
var globalTitle = "Global title";
function showDialog(){
var header = document.getElementById("infoDialog".concat("_title"));
header.innerHTML = globalTitle;
infoDialog.show();
}
</script>
和原始标题被忽略…
我不相信您可以像您所展示的那样在JavaScript中将属性绑定到变量。但是,如果p:dialog
元素像其他HTML元素一样,您可以通过在每次对话框标签更新时直接从JavaScript设置标题来实现您想要的效果。首先,给你的对话框一个ID:
<p:dialog id='dialog' widgetVar="nodeDetail" width="520" header="{dialog_label}">
现在,在函数update_dialog_label(arg)
中,在最末尾添加以下行:
nodeDetail.header = dialog_label;
现在,每次调用update函数时,对话框头将被更新。希望对你有帮助。
编辑:我不熟悉PrimeFaces,但我在谷歌上搜索了这个,它可能会走上正确的道路:http://forum.primefaces.org/viewtopic.php?f=3& t = 14538
通过在浏览器中检查生成的代码,我成功地用以下javascript修改了<p:dialog>
的标题:
$('span#infoDialog_title.ui-dialog-title').html(globalTitle);
和显示对话框:
PF('infoDialog').show();
希望这对你有帮助!
相关文章:
- 无法获取属性'selectedIndex'的未定义引用或null引用
- 无法获取属性'Id'使用Knockout.js的未定义或空引用API
- 如何正确引用传递到淘汰中的当前元素的属性.JS
- 如何使用object.assign()从其他对象引用基本对象属性
- 引用Ractive.js中的子属性
- 无法获取属性'字符串'的未定义或null引用IE 11 ASP.NET
- 使用闭包创建原型中引用的私有属性
- SCRIPT5007:无法获取属性'长度'的未定义引用或null引用
- 无法获取属性'setActionableButtonState'的未定义引用或null引用
- 传递引用 jQuery 后无法访问元素属性
- 对象属性引用JavaScript中的其他对象属性
- 函数作为对象中的属性:引用函数内部的其他属性
- 从另一个属性引用js属性的正确方式
- 使用Aurelia's ref属性引用元素的视图模型
- 在javascript中分配属性引用
- 当对象属性引用对象本身(self reference)时,Javascript内存泄漏
- angular ng-repeat内部的动态属性引用
- 如何从p:对话头属性引用javascript变量
- 如何通过属性引用javascript对象's onclick方法
- 动态地从对象循环键传递属性引用