我知道之前已经问过这个问题,但我已经看到了答案
我的p:日历代码是:
<p:calendar id="calendar" value="#{bean.object.date}"
pattern="MM-dd-yyyy" mask="true" required="true"
requiredMessage="Required." maskAutoClear="false"
disabledWeekends="true" beforeShowDay="disableAllTheseDays"
converterMessage="Invalid Date.">
<p:clientValidator event="blur"/>
</p:calendar>
我尝试添加此代码:
<script type="text/javascript">
var disabledDays = "#{bean.disabledDatesList}";
function disableAllTheseDays(date) {
var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
for (i = 0; i < disabledDays.length; i++) {
if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1) {
return [false];
}
}
return [true];
}
</script>
注意:我的列表是List LocalDate类型。 (我不能在LocalDate上添加&lt;&gt;但我猜你们会理解)
错误是:元素的内容必须由格式良好的字符数据或标记组成。
更新:我已经理解为什么我有javax.faces.view.facelets.FaceletException,因为这个问题的答案是Error parsing XHTML: The content of elements must consist of well-formed character data or markup。我现在的问题是有人可以向我解释一下beforeShowDay属性如何与我的javascript函数一起工作,因为我在该部分通过控制台出错。错误是Uncaught TypeError:无法读取未定义的属性“0”。