<input type="text" id="txtOMSourceName" onkeypress="hideSpan()"/>
<input type="text" id="txtMPName" onkeypress="hideSpan()"/>
我正在验证页面上有几个文本框,如果没有输入数据则标记为错误。我正在为这些文本框添加错误类。我想在文本框中开始输入时删除错误类。我想在jquery中使用它来引用当前文本框而不是ID,所以我可以在其他页面上重用代码。
我在文本框的按键上调用hideSpan。它在我指定ID时有效。但不是这个关键字
function hideSpan() {
/* $('#txtOMSourceName').removeClass('error');
$('#ddlOMSite').removeClass('error');
$('#txtMPName').removeClass('error');
$('#txtOMResendInterval').removeClass('error');*/
$(this).removeClass('error');
$("#requiredspan").hide("slow");
}
答案 0 :(得分:1)
在事件中发送this
以了解谁调用了该函数:
<input type="text" id="txtOMSourceName" onkeypress="hideSpan(this)"/>
和功能:
function hideSpan(e) {
/* $('#txtOMSourceName').removeClass('error');
$('#ddlOMSite').removeClass('error');
$('#txtMPName').removeClass('error');
$('#txtOMResendInterval').removeClass('error');*/
$(e).removeClass('error');
$("#requiredspan").hide("slow");
}
答案 1 :(得分:1)
我认为这是一个更好的解决方案:
假设你有一堆文字输入:
<input type="text" id="txtOMSourceName" />
<input type="text" id="txtMPName "/>
不是将函数编写到每个标记元素中,而是只需:
$('input[type="text"]').on('keydown', function() {
$(this).removeClass('error');
$('#requiredspan').hide('slow');
}