繁体   English   中英

选择一个不同于单击的元素

[英]select a different element other than the one clicked

当您单击其他元素,不知道元素名称时,如何使用jquery选择元素? 下面的代码遍历所有类别。 我不知道有多少个类别,或者名称是什么。 单击“ insertUrl”链接时,我需要选择文本区域。

我唯一能想到的就是在onclick中运行一个函数,并将文本区域的名称作为参数传递。

另外,我不确定当每个链接具有相同的ID时是否可以使用选择器,所以这可能吗?

<%
    FullName = objCategory.ID & "|" & objCategory.Name
%>      
<TD COLSPAN="2">
<TEXTAREA ROWS="5" CLASS="formWide" id="<%=FullName %>"><%= objCategory.Text %></TEXTAREA><br />
<a href="#" id="insertUrl">Insert URL</a>
</TD>

如果HTML结构保持不变,则可以使用.prev()

您不应具有相同ID的元素。 您可以使用类class="insertUrl"

<%
  FullName = objCategory.ID & "|" & objCategory.Name
%>      
<TD COLSPAN="2">
  <TEXTAREA ROWS="5" CLASS="formWide" id="<%=FullName %>"><%= objCategory.Text %></TEXTAREA><br />
  <a href="#" class="insertUrl">Insert URL</a>
</TD>

$(".insertUrl").click(function() {
  var textarea = $(this).siblings('textarea');
});

如果使用以下方法,可能会更好:

$(this).siblings('textarea');

这样,您可以更灵活地处理html控件顺序。 这样,如果您删除了
或更改该TD内的其他内容,脚本仍将起作用。

更好的方法是使用<label>元素。 这样,您可以在文本注释和文本区域之间插入以后的其他元素,它仍然可以工作。

<textarea id="ta_id1" onclick="click_processing_func"></textarea>
<label for="ta_id1" class="link">Insert Url</label>

现在,如果有人单击标签,textarea将收到click事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM