通过jquery查找控件ID并将其传递给函数以切换它

时间:2015-01-15 13:13:22

标签: javascript c# jquery asp.net css3

通过jquery查找控件ID并将其传递给函数以切换它。

function toggleDiv() {
   var $usr = $this.find('[id*=shoow]');
   $($usr).toggle('slow');
}
<asp:LinkButton  runat="server" OnClientClick="toggleDiv(); return false;">Detials</asp:LinkButton>

  <table>
    <tr>
      <td id="shoow" style="width:650px;height:100px;background-color:blue; display:none;">
      </td>
    </tr>
</table>

2 个答案:

答案 0 :(得分:0)

最初,由于您已声明服务器端控件LinkButton,因此必须为其提供ID

<asp:LinkButton  ID="linkButtonId" runat="server">Details</asp:LinkButton>

您不必为此目的使用find功能。实际上,我们使用此功能的原因如下:

  

获取当前匹配组中每个元素的后代   元素,由选择器,jQuery对象或元素过滤。

你能做什么?

我建议在您的页面底部,在正文的结束标记之前添加此脚本

<script type="text/javascript">
    $(function(){
        $("#"+<%=linkButtonId.ClientID%>).click(function(){
            $('#shoow').toggle('slow');
        });
    })
</script>

重要提示

您应该在此脚本之前加载jQuery。

  

我想通过find control function或jquery从代码后面给id   功能因为我有datalist generat id的随机。

You could select then the element like below:

$("[id*="+"shoow"+"]").toggle('slow');

请尝试以下代码段来了解我的意思:

$(function(){
    $("#buttonId").click(function(){
        $("[id*="+"shoow"+"]").toggle('slow');
    })
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="buttonId">Details</button>

<table>
      <tr>
     <td id="3shoow2" style="width:650px;height:100px;background-color:blue; display:none;">

        </td>
    </tr>
</table>

答案 1 :(得分:0)

我同意克里斯托斯的答案。

是的,您不必使用 find 功能

请使用jQuery:

$('#shoow').toggle('slow');