Can';使用Jquery无法找到最近的标签
我无法使用Jquery找到最近的标签 标签的id与输入的id不同:Can';使用Jquery无法找到最近的标签,jquery,Jquery,我无法使用Jquery找到最近的标签 标签的id与输入的id不同: $(document).delegate(“输入[type=text]”,“键控”,函数(){ 如果(this.className=='other val'){ $label=$('label[for=“”+this.id+”); 如果($label.length>0){ console.log('ok') } } }); 其他 你的标记让我有点困惑。试试这个: HTML标记的示例: <div> <la
$(document).delegate(“输入[type=text]”,“键控”,函数(){
如果(this.className=='other val'){
$label=$('label[for=“”+this.id+”);
如果($label.length>0){
console.log('ok')
}
}
});代码>
其他
你的标记让我有点困惑。试试这个:
HTML标记的示例:
<div>
<label>some text</label>
<input type="text">
</div>
标签不必环绕输入字段您的标记让我有点困惑。试试这个:
HTML标记的示例:
<div>
<label>some text</label>
<input type="text">
</div>
标签不必环绕输入字段因为此元素有多个类名,所以必须使用includes
而不是=
运算符
另外,输入的ID是无线电组-1548153603981-other-value
,您在标签中遗漏了单词value
,并且由于您的HTML是由第三方软件生成的,因此我使用。替换从输入ID中省略-值
$(document).delegate(“输入[type=text]”,“键控”,函数(){
if(this.className.includes('other-val')){
$label=$('label[for=“”+this.id.replace(“-value”,”)+”);
如果($label.length>0){
console.log('ok')
}
}
});代码>
其他
由于此元素有多个类名,因此必须使用includes
而不是=
运算符
另外,输入的ID是无线电组-1548153603981-other-value
,您在标签中遗漏了单词value
,并且由于您的HTML是由第三方软件生成的,因此我使用。替换从输入ID中省略-值
$(document).delegate(“输入[type=text]”,“键控”,函数(){
if(this.className.includes('other-val')){
$label=$('label[for=“”+this.id.replace(“-value”,”)+”);
如果($label.length>0){
console.log('ok')
}
}
});代码>
其他
在
上使用而不是委托
,使用大多数jQuery功能,如果使用jQuery,不要结合纯DOM javascript
我看到标签是输入的父项,所以使用方法
在
上使用而不是委托
,使用大多数jQuery功能,如果使用jQuery,不要结合纯DOM javascript
我看到标签是输入的父项,所以使用方法
使用jquery获取上述标签的可能方法
$('label[for$=其他])代码>-“$=”忽略“其他”之前的所有文本并查找控件
$(this.sibbines('label[for$=other])代码>-在其任何同级元素的回调函数中时
$('label[for=radio-group-1548153603981-other])
使用jquery获取上述标签的可能方法
$('label[for$=其他])代码>-“$=”忽略“其他”之前的所有文本并查找控件
$(this.sibbines('label[for$=other])代码>-在其任何同级元素的回调函数中时
$('label[for=radio-group-1548153603981-other])
替换$('label[for=“”+this.id+”)使用此$(“标签[for='”+this.id+“']”)进行编码>代码>感谢您的回复,但仍然false@Ahtisham:为什么引号的类型很重要?您需要使用hasClass
替换$('label[for=“”+this.id+”)使用此$(“标签[for='”+this.id+“']”)进行编码>代码>感谢您的回复,但仍然false@Ahtisham:为什么引号的类型很重要?您需要使用hasClass
我无法修改HTML。我有一个FormBuilderJS构建所有html。我不能修改html。我有一个formBuilder js构建所有html。我不能修改标签中的内容。此HTML由formBuilderJsI生成。我在回答的末尾添加了一个建议,以解决HTML问题。@MathieuMourareauif如果我这样做。id.replace(“value”),我将替换输入权限的id?如何仅删除id中的“-value”?实际上,当我执行console.log(this.id)时,我得到:radio-group-1548153603981-other-value我想替换为radio-group-1548153603981-otherI我已经根据comments@mathieumourreaui中的新问题再次编辑了答案,无法修改标签中的内容。此HTML由formBuilderJsI生成。我在回答的末尾添加了一个建议,以解决HTML问题。@MathieuMourareauif如果我这样做。id.replace(“value”),我将替换输入权限的id?如何仅删除id中的“-value”?实际上,当我执行console.log(this.id)时,我得到了:radio-group-1548153603981-other-value我想用radio-group-1548153603981-other替换。我已经根据comments@MathieuMourareau中的新问题再次编辑了答案
$(document).on( "keyup", "input[type='text']", function() {
if($(this).hasClass('other-val')) {
$label = $(this).closest("label");
if ($label.length > 0 ) {
console.log('ok')
}
}
});
<label for="radio-group-1548153603981-other">