【发布时间】:2016-10-12 23:53:12
【问题描述】:
我有一个复选框,其中有一个名为 onclick 的 javascript 函数,用于显示/隐藏 div,如下所示。在 div 中有一个带有 CompareValidator 的文本框,它将文本框中的文本验证为 Double。问题是当复选框被选中并显示 div 时,CV 会触发,并且默认情况下会出现错误消息,因为看起来 CV 正在验证一个不是双精度的空文本框。在复选框使 div 可见和/或仅当文本框中的文本不为空且不是空字符串时,是否有办法使 CV 生效?谢谢。
<table id="tblLabTests" class="fullWidth dataEntryTableTop" runat="server" visible="false" clientidmode="Static">
<tr id="trL_FBC" clientidmode="static">
<td>
<asp:CheckBox ID="chkL_FBC" runat="server" clientidmode="static" />
<asp:Label AssociatedControlID="chkL_FBC" ID="lblL_FBC" runat="server" Text="FBC" />
</td>
<td>
<div id="divFBC" runat="server" clientidmode="static">
<table id="tblFBC" class="fullWidth noBorder" runat="server" clientidmode="static">
<tr>
<td>
<asp:Label ID="lblPlateletCount" runat="server" Text="Platelet Count" />
</td>
<td>
<asp:TextBox ID="txtPlateletCount" runat="server" MaxLength="4" CssClass="width50" />
<asp:Label ID="Label10" runat="server">*10<sup>9</sup>/L</asp:Label><br />
<asp:CompareValidator ClientIDMode="Static" CssClass="cvRed" runat="server" id="CompareValidator1" ControlToValidate="txtPlateletCount" Type="Double" ErrorMessage="Must be a number" Display="Dynamic" Operator="DataTypeCheck" />
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
function fbcUpdate() {
var checked = $('#chkL_FBC').is(':checked');
if (checked) {
$('#divFBC').css('display', '');
}
else {
$('#divFBC').css('display', 'none');
}
}
【问题讨论】:
-
你的意思是
if($('#txtPlateletCount').val() !== ''){/* do your stuff here */}? -
@PHPglue 好吧,这看起来可行,所以在你的东西在这里部分,你提倡启用 CV 吗?我尝试启用和禁用 cv 但无济于事。请问语法是什么?谢谢
标签: javascript jquery css asp.net