Я прочесывал interwebs и stackoverflow, но я не сталкивался с решением, которое работает. Мне нужно удалить текст по умолчанию из текстового поля, когда происходит onfocus. Я знаю, что он бьет по фокусу, потому что мой класс для текста также установлен и цвет меняется. Вот мой код и то, что я пробовал.Clear Asp.Net TextBox Control on OnFocus с JQuery или Javascript
ASP:
<asp:TextBox ID="txtAddEditDel" runat="server" CssClass="txtAddEditDel" ></asp:TextBox>
текст по умолчанию некоторые случайные инструкции заселяет на Page_Load.
Jquery:
$(".txtAddEditDel").focus(function() {
var selectedRoleText = $(this).find('option:selected').text();
var selectedRoleId = $(this).find('option:selected').val();
var selectedRoleIndex = $(this).find('option:selected').index();
//enable add button
enableDisableLinkButtons(true, true, true);
if (selectedRoleText == 'Create, Edit, or Delete a Role Name.') {
$(".txtAddEditDel:text").val('');
}
$(".txtAddEditDel").removeClass('placeholderText');
});
Функция removeClass хит, но мое значение не очищается. Вот что я пробовал:.
$(".txtAddEditDel").val('');
$(".txtAddEditDel").val("");
$(".txtAddEditDel").text("");
$(".txtAddEditDel").text == '';
$(".txtAddEditDel").text == "";
$(this).val('');
document.getElementbyId('<%= txtAddEditDel.ClientID %'>.value = "";
Почему бы не использовать атрибут placeholder в качестве текста по умолчанию? Он будет удален автоматически. То есть http://jsfiddle.net/qdthqkj1/ –