这样我设置文本框的水印,但是当我在文本框中键入任何内容并单击任何按钮时,我的打字文本就会消失,水印文本会再次在文本框中设置。
这是我的代码。请看看并告诉我我在哪里犯了错误
$(document).ready(function () {
var SearchTerm = $("input[id*='txtSearch']").val();
var watermark = 'Parts search in english';
//init, set watermark text and class
if ($('[id*=txtSearch]').val().length == 0) {
$('[id*=txtSearch]').val(watermark).addClass('watermark');
}
//if blur and no value inside, set watermark text and class again.
$('[id*=txtSearch]').blur(function () {
if ($(this).val().length == 0 || SearchTerm == '') {
$(this).val(watermark).addClass('watermark');
}
});
//if focus and text is watermrk, set it to empty and remove the watermark class
$('[id*=txtSearch]').focus(function () {
if ($(this).val() == watermark) {
$(this).val('').removeClass('watermark');
}
});
$('[id*=txtSearch]').keypress(function (event) {
if (event.keyCode == 13) {
event.preventDefault();
$(".search-box :button").trigger('click');
}
});
});
我调试了这段代码
$('[id*=txtSearch]').blur(function () {
if ($(this).val().length == 0 || SearchTerm == '') {
$(this).val(watermark).addClass('watermark');
}
});
并看到$(this).val().length is always 0 and SearchTerm is blank
。我正在用firefox测试。我的代码中是否有任何错误,如果是,然后突出显示该区域,并告诉我要纠正什么。感谢
答案 0 :(得分:-1)
如果您尝试在文本框中为用户提供提示,则只需使用输入标记的占位符属性:
例如:
<input type="text" name="fname" placeholder="First name"><br>
更多信息:http://www.w3schools.com/tags/att_input_placeholder.asp