将参数传递给从aspx到jquery的事件处理程序

时间:2012-09-28 06:53:07

标签: jquery asp.net parameters

我有一个文本框;

<input runat="server" type="hidden" value="0" id="input1" name="input1_name">

我有一个div;

<div id="div1"> some content </div>

我有一个单独的.js文件,其中我有一个在页面加载时加载的函数。在那个函数中我有:

$("#div1").click(function(e){ definition; });

我想将上面提到的输入控件的客户端ID传递给上述场景中的click处理程序。我无法在上面提到的javascript文件中使用属性ClientID。休息一切正常。

请告知我如何将参数传递给aspx页面上控件的click处理程序到javascript文件(以某种方式获取ClientID)。

这是在.NET上。

如果我需要在此处发布任何更多详细信息,请告诉我,如果有任何不明确的话。

1 个答案:

答案 0 :(得分:3)

根据您使用的ASP.NET版本,您有几个选项。

在ASP.NET 4.0之前,您可以执行以下操作:

<script type="text/javascript">
    function DoSomething(){
        alert('<%= Control.ClientID %>');
    }
</script>

在ASP.NET 4.0中引入了一项新功能:ClientIDMode

<asp:TextBox ID="myCustomId" runat="server" Width="65%" ClientIDMode="Static" />

将输出:

<input id="myCustomId" style="width: 65%" name="ctl00$MasterPageBody$ctl00$txtEcho2" />

如果您使用静态ClientIDMode,则可以在JavaScript中使用ID而不会出现任何问题。

这是一个很好的博客,解释了不同的选项:ASP.NET 4.0 ClientID Overview