[英]javascript textbox validation fires custom validator error regardless of value
我正在嘗試基於下拉列表驗證文本框,例如,如果ddl值為'Day',則文本框值不能超過31。似乎無論輸入什么都會觸發我的自定義驗證器錯誤,我在做什么錯了,謝謝:
<asp:TextBox ID="uitxtCamLastVisitDur" runat="server" CssClass="tooltip"
Width="65px" Enabled="False" ToolTip="Indicates a required spending on the member's last visit."></asp:TextBox>
<asp:CustomValidator ID="ccvLastVisitDuration" runat="server"
ClientValidationFunction="validateDurationType"
ControlToValidate="uitxtCamLastVisitDur"
ErrorMessage="Duration input error"></asp:CustomValidator>
function validateDurationType(src, args) {
if (document.getElementById('<%= uiddlCamLastVisitDurType.ClientID%>').selectedIndex == 1)
if (parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value < 0) || (parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value > 31))) {
args.IsValid = false;
return;
}
if (document.getElementById('<%= uiddlCamLastVisitDurType.ClientID%>').selectedIndex == 2)
if (parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value < 0) || (parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value > 12))) {
args.IsValid = false;
return;
}
args.IsValid = true;
}
您的函數遇到javascript錯誤。 您在parseInt上缺少括號:
parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value < 0)
應該
parseInt(document.getElementById('<%= uitxtCamLastVisitDur.ClientID%>').value) < 0)
順便說一下,所有這些人都有相同的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.