根据 inputHidden 字段的值,应在 javascript 端执行某些功能。
<h:inputHidden id="onlyCaseSensitive" value="#{testBean.isPageAllowed()}"/>
执行 javascript 后,应用程序抛出错误 Property not qritable Illegal Syntax for Set Operation
根据 inputHidden 字段的值,应在 javascript 端执行某些功能。
<h:inputHidden id="onlyCaseSensitive" value="#{testBean.isPageAllowed()}"/>
执行 javascript 后,应用程序抛出错误 Property not qritable Illegal Syntax for Set Operation
您的值h:inputHidde
应该指向带有 getter 和 setter 的支持 bean 的属性。因此,可能当您提交页面时,访问 setter 字段时出现问题。
应用程序抛出错误 Property not writable Illegal Syntax for Set Operation
您的 EL 表达式#{}
无效。它必须评估为值表达式,而不是方法表达式。不可能对给定的方法表达式执行 setter 方法调用,但在提交 JSF 表单时这是必需的。您需要删除is
前缀和那些括号以使其成为有效的值表达式。
<h:inputHidden id="onlyCaseSensitive" value="#{testBean.pageAllowed}"/>
这需要一个public boolean isPageAllowed()
getter方法和一个public void setPageAllowed(boolean pageAllowed)
setter方法。
如果您实际上只需要将 JSF 托管 bean 属性用作 JavaScript 变量,那么您根本不应该将其呈现为隐藏输入,而只需让 JSF 呈现一个完整的 JavaScript 变量,而无需弄乱隐藏输入和HTML DOM 遍历。
例如
<script>
var onlyCaseSensitive = #{testBean.pageAllowed};
</script>
这将在 JSF 生成的 HTML 输出中结束,如下所示(右键单击页面并查看源代码以查看它):
<script>
var onlyCaseSensitive = true;
</script>