使用<div>元素内的参数自动调用JS函数

时间:2015-07-23 13:19:49

标签: javascript jquery asp.net-mvc html5

我试图在互联网上找到答案..但我没有找到:(
我试图自动调用一个javascript函数传递一个&lt; div>页面加载时的元素 我知道&#34; onload&#34;没有工作&lt; div>元素。我不知道该怎么做。

注意..:我的参数是动态的,因为它在foreach循环中。每个循环我都有2个不同的参数发送给函数。

@foreach(var i in Something)  
{  
  <div onload="myFunction(i.param1, i.param2);">  
  </div>
}

3 个答案:

答案 0 :(得分:1)

您可以在Error 3 'txtS_AP' is not declared. It may be inaccessible due to its protection level.

的末尾使用脚本块
<asp:TemplateField >
  <HeaderTemplate>
    <asp:LinkButton ID="lbAP" runat="server" Text="AP" style="color:white;" CommandName="Sort" CommandArgument="AP"></asp:LinkButton> <br />
    <asp:TextBox runat="server" ID="txtS_AP"  CssClass="STD_searchfields" AutoPostBack="true" ></asp:TextBox>
  </HeaderTemplate>     

      <ItemTemplate>                                       
           <table  >
           <tr >
           <td class="STD_normal" style="width:100px;"><%#Eval("AP")%></td>                                                    
           </tr>
            <tr>
           <td class="STD_Normal_Grey" style="width:100px; height:20px"><%#Eval("OUNCKN")%> (<%#Eval("ORC")%>)</td>
           </tr>
           </table>                                           
        </ItemTemplate>                                       
      <HeaderStyle HorizontalAlign="Left" />
</asp:TemplateField>

答案 1 :(得分:0)

如果要在加载页面时调用该函数,则可以将onload放入<body>标记

<body onload="myFunction(dynam_param1, dynam_param2);">  

答案 2 :(得分:0)

更新:我已更新了我的jsFiddle以显示如何使用单个脚本标记。

假设下面的代码是通过for循环生成的。

<div class="dynamic-div" data-dynamic1='1' data-dynamic2='a'> 
    1
</div>
<div class="dynamic-div" data-dynamic1='2' data-dynamic2='b'> 
    2
</div>

因此,在您准备好的方法中,您可以使用类dyanmic-div获取所有div,然后执行您的过程

$(document).on("ready", function(){
    $(".dynamic-div").each(function(index, element){
          var $this = $(element);
          myFunction($this.attr("data-dynamic1") , $this.attr("data-dynamic2"));            
    });
});

function myFunction(arg1, arg2){
    alert(arg1 + " - " +  arg2);            
}

http://jsfiddle.net/q8qzfavv

您可以在此处使用函数调用或您计划执行的任何其他操作替换警报。