Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
primefaces/jsf中id和widgetvar的命名约定_Jsf_Primefaces_Naming Conventions - Fatal编程技术网

primefaces/jsf中id和widgetvar的命名约定

primefaces/jsf中id和widgetvar的命名约定,jsf,primefaces,naming-conventions,Jsf,Primefaces,Naming Conventions,我遇到了一个问题,id属性和widgetvar的id都相同,显然不建议两个属性的值都相同。因此,我试图找到最好的惯例。是否有特殊(保留)字符不能使用,如句号等。谢谢,请始终使用特定前缀。没有真正的“最佳”前缀,也没有官方推荐的惯例。“最佳”只是在整个web应用程序中保持一致 例如 或 或 请注意,$在JSF客户端ID中是不允许的 作为widgetVar的$难道不是“危险”吗?PrimeFaces随jQuery一起提供,并使用$调用jQuery。@siebz0r:这与$()函数不同。它

我遇到了一个问题,id属性和widgetvar的id都相同,显然不建议两个属性的值都相同。因此,我试图找到最好的惯例。是否有特殊(保留)字符不能使用,如句号等。谢谢,请始终使用特定前缀。没有真正的“最佳”前缀,也没有官方推荐的惯例。“最佳”只是在整个web应用程序中保持一致

例如





请注意,
$
在JSF客户端ID中是不允许的

作为widgetVar的
$
难道不是“危险”吗?PrimeFaces随jQuery一起提供,并使用
$
调用jQuery。@siebz0r:这与
$()
函数不同。它只是一个变量名。
$tabs
不能神奇地执行
$('tabs')
或其他操作。顺便说一句,jQuery是任何jQuery对象的标准变量名约定。在这个特殊的PrimeFaces widgetVar案例中,它并不完全相同,但它只是为了说明这个想法。这当然是真的,而且我在JSF方面没有您那么多的经验,但是使用
$
作为常见前缀?一开始,当我看到类似于
$dialog.show()
或类似的东西时,我会感到困惑。@siebz0r:一般的JS开发人员会将
var tabs=document.getElementById(“tabs”)
视为普通的HTML元素和
var$tabs=$(“#tabs”)
作为jQuery对象,因此可以安全地假设所有jQuery特定的函数都可以在其上使用(请注意,它不是特定于JSF的,而是特定于JS/jQuery的)。感谢各位的反馈,我使用了一个带有“\”(下划线)的常量作为我的约定
<p:tabView id="tabs" widgetVar="$tabs">
<p:dataTable id="table" widgetVar="$table">
<p:calendar id="calendar" widgetVar="$calendar">
<p:tabView id="tabs" widgetVar="_tabs">
<p:dataTable id="table" widgetVar="_table">
<p:calendar id="calendar" widgetVar="_calendar">
<p:tabView id="tabs" widgetVar="p_tabs">
<p:dataTable id="table" widgetVar="p_table">
<p:calendar id="calendar" widgetVar="p_calendar">