我使用以下代码更改表单上的标记属性
标签
<input jwcid="licensingApprovalDate@CustomDatePicker" disabled="ognl:disabled || isLicensingApprovalDateDisabled()"
value="ognl:company.licensingApprovalDate" displayName="message:company.licensingApprovalDate"/>
将新属性添加到上述标记的代码
function checkForChange(field) {
var approvalStatus = document.getElementById('licensingStatus').value;
if(approvalStatus == "Pass"){
document.getElementById('licensingApprovalDate').setAttribute("validators", "validators:maxDateToday,required");
} else {
document.getElementById('licensingApprovalDate').setAttribute("validators", "validators:maxDateToday");
}
}
当licenseStatus被更改时,正在调用此函数,它正在工作,当我更改licensingStatus时检查元素时,标记被正确更改但这应该在licensingApprovalDate输入框旁边添加*,但它不会
有没有办法在第二次更改标签/ licensinggStatus时进行更改?
答案 0 :(得分:0)
验证器是一个参数,而不是一个属性。它在模板中显示为属性,因为,嘿,它有点像XML。
Tapestry 3不是为这种动态行为而设计的(虽然它在2003年是最前沿的!)。鉴于其2012年,请考虑升级到Tapestry 5!