我有一个带有文本框(名称)和下拉列表(酒店)的表单。
<input type="text" name="lname" runat="server" id="LName" tabindex="1" onblur="if(this.value == ' ') { this.value = ' Name'; }"
onfocus="if(this.value == ' Name') { this.value = ' '; }" value=" Name"
style="color: #000000; border: 1px solid #757575; width: 234px; margin-top: 5px;" />
<div class="dropdownselect" style="margin: 15px 0;">
<asp:DropDownList ID="drhotel" runat="server" Style="border: 1px solid #757575; width: 234px;
height: 16px; *height: 18px;">
</asp:DropDownList>
如果未输入任何内容,则默认情况下文本框将显示“名称”。我正在尝试使用以下方法验证客户端点击:
function validatecust() {
if (document.getElementById('<%= LName.ClientID %>').value == ' Name') {
alert('Please enter Name');
document.getElementById('<%= LName.ClientID %>').focus();
return false;
}
if (document.getElementById('<%= drhotel.ClientID %>').value == 'Select Hotel') {
alert('Please select Hotel');
document.getElementById('<%= drhotel.ClientID %>').focus();
return false;
}}
如果我没有在“名称”字段中输入任何内容,则不会显示警报。酒店验证工作正常。
答案 0 :(得分:1)
尝试:
if (document.getElementById('<%= LName.ClientID %>').value == 'Name') {
留下空白!如果要缩进文本框中的文本,请使用css填充!
如果以上内容不起作用,我认为您应该使用<asp:TextBox/>
而不是输入runat服务器!
您是否检查了LName.ClientID
的结果值以及输入中的真实ID?
答案 1 :(得分:0)
更改此行:
if (document.getElementById('<%= LName.ClientID %>').value == ' Name') {
为:
if (document.getElementById('<%= LName.ClientID %>').value == String.fromCharCode(160) + 'Name') {