我想从javascript获取文本框的文本值。文本框附有水印扩展器。因此,当从javascript中获取值时,如果文本框为空,那么我们也会得到那个水印文本。
我们的标记就像
<asp:TextBox ID="txtname" runat="server" MaxLength="30"></asp:TextBox>
<asp:TextBoxWatermarkExtender ID="wmname" runat="server" TargetControlID="txtname"
WatermarkText="Name" WatermarkCssClass="txt">
</asp:TextBoxWatermarkExtender>
JS:
$('input').blur(function() {
alert($(this).val());
});
如果我们没有输入任何值,那么在模糊事件上,它也会提示“名称”。
有没有办法获取文本框的确切文本,即不是来自javacript的水印文本?
答案 0 :(得分:2)
在wrapper behavior
中,我们可以使用 _isWatermarked 属性来检查TextBox是否加水印。
脚本:
<script>
function addValue() {
if (!AjaxControlToolkit.TextBoxWrapper.get_Wrapper($get("TextBox1"))._isWatermarked) {
$get("TextBox1").value = $get("TextBox1").value + ": Hello!";
}
}
</script>
控制:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:TextBoxWatermarkExtender ID="TWE1" runat="server" Enabled="True" TargetControlID="TextBox1"
WatermarkText="Type here:" WatermarkCssClass="watermarked" />