单击w/jQuery选择与TD对应的div
我有一张桌子。当我点击一个TD时,我需要显示一个隐藏的div,其中包含多个div。隐藏容器中的每个div都有一个文本值。我需要选择与单击的TD对应的值 JS单击w/jQuery选择与TD对应的div,jquery,Jquery,我有一张桌子。当我点击一个TD时,我需要显示一个隐藏的div,其中包含多个div。隐藏容器中的每个div都有一个文本值。我需要选择与单击的TD对应的值 JS $(".clickme").click(function(){ $("#hiddenDiv").hide().fadeIn(200); if ($(this).text() == $("#hiddenDiv div").text()) { // HOW DO I SELECT THAT DIV?
$(".clickme").click(function(){
$("#hiddenDiv").hide().fadeIn(200);
if ($(this).text() == $("#hiddenDiv div").text()) {
// HOW DO I SELECT THAT DIV?
// matched div .css("color", "red");
}
});
HTML
<table id="myTbl">
<tr>
<td></td>
<td class="clickme">Left</td>
</tr>
</table>
<div id="hiddenDiv" style="display:none">
<div>Straight</div>
<div>Left</div>
<div>Right</div>
</div>
左边
直的
左边
赖特
使用:contains选择正确的选项:
$("#hiddenDiv div:contains(" + $(this).text() + ")")
使用:contains可选择正确的选项:
$("#hiddenDiv div:contains(" + $(this).text() + ")")
$(".clickme").click(function(){
var thisText = $(this).text();
var $targetEl = $('#hiddenDiv > div:contains('+thisText+')');
if( $targetEl.length > 0 ){ // if exists
$("#hiddenDiv").hide().fadeIn(200);
$targetEl.css({color:'red'});
}
});
$(".clickme").click(function(){
var thisText = $(this).text();
var $targetEl = $('#hiddenDiv > div:contains('+thisText+')');
if( $targetEl.length > 0 ){ // if exists
$("#hiddenDiv").hide().fadeIn(200);
$targetEl.css({color:'red'});
}
});
contains与问题中使用的
==
不同。不要认为div
和:contains()
@gdoron之间应该有一个空格。我认为这对于问题的范围来说已经足够了,是吗?contains不像问题中使用的==
。不要认为div
和:contains()
@gdoron之间应该有一个空格。我认为这对于问题的范围来说已经足够了,不是吗?@Sagiv。再读一遍答案。。。你错了<代码>变量$this=$(this)代码>你对,我没注意到。但是最好避免使用$this syntaks,因为如果将它与$(this)@Sagiv进行比较,会让人特别困惑$这是一种非常常见的用法。读一下:这完全取决于上下文。我认为那行像“$(this.text()==$this.text();”可能是对的,但令人困惑,应该重写。@Sagiv。再读一遍答案。。。你错了<代码>变量$this=$(this)代码>你对,我没注意到。但是最好避免使用$this syntaks,因为如果将它与$(this)@Sagiv进行比较,会让人特别困惑$这是一种非常常见的用法。读一下:这完全取决于上下文。我认为那行像“$(this.text()==$this.text();”可能是对的,但令人困惑,应该重写。