我有这个HTML或标记。
<fieldset class="ui-dform-fieldset">
<input type="text" id="totalRetryCount" name="totalRetryCount" tabindex="1" onblur="validateElement('Configuration', 'testSuiteConfigurationform','totalRetryCount')" class="ui-dform-text">
<legend class="ui-dform-legend">Total Retry Count</legend>
<label for="totalRetryCount" class="error">Please enter a valid number.</label>
</fieldset>
我想检查标签是否有错误类。我确实喜欢那个
当我调试我的元素值是“totalRetryCount”时。但它没有显示警告。
element ="totalRetryCount"
if($("#"+element+" "+"label").hasClass('error')){
alert('-sdafs-')
}
答案 0 :(得分:5)
你的选择器错了。 totalRetryCount
ID位于input
,其中没有子级。
目标label
是兄弟姐妹,因此请改用 next-siblings-selector :
if ($("#" + element + " ~ label").hasClass("error")) {
alert("found error");
}
或者这个:
if ($("#" + element + " ~ label.error").length) {
alert("found error");
}
答案 1 :(得分:1)
input
标记永远不会关闭,input
也会自动关闭。由于你有一个ID,只需:
$("#totalRetryCount").siblings("label").hasClass("error");
答案 2 :(得分:1)
字符串totalRetryCount
是for
属性的值,而不是父元素的id
。
var element ="totalRetryCount"
if($("label[for='"+element+"']").hasClass('error')){
alert('-sdafs-')
}
(or)
$("#" + element).siblings("label[for='"+element+"']").hasClass("error");
答案 3 :(得分:0)
您的ID /类标识符已关闭,您正在检查标签是否为ID为totalRetryCount
的元素的子元素,但它不是该元素的子元素。
这有效
HTML:
<fieldset class="ui-dform-fieldset">
<input type="text" id="totalRetryCount" name="totalRetryCount" tabindex="1" onblur="validateElement('Configuration', 'testSuiteConfigurationform','totalRetryCount')" class="ui-dform-text">
<legend class="ui-dform-legend">Total Retry Count</legend>
<label for="totalRetryCount" class="error">Please enter a valid number.</label>
</fieldset>
jQuery的:
if($(".ui-dform-fieldset label").hasClass('error')){
alert('-sdafs-')
}
答案 4 :(得分:0)
您的选择器不正确。请参阅此处以获取解释标签选择器的问题。 jQuery selector for the label of a checkbox
看起来应该更像这样。
if ( $("label[for='" + element + "']").hasClass( 'error' ) )
{
alert( 'Heres my alert!' );
}
答案 5 :(得分:0)
if($("#totalRetryCount").siblings('label').hasClass('error')){
alert('-sdafs-'); }
答案 6 :(得分:0)
$("label[for=totalRetryCount]").hasClass('error')){
alert('-sdafs-')
}
实际上,如果您的id
中没有非字母数字字符,那么您就不需要用' '
单引号括起来。