asp .net imagebutton通过转发器/双事件点击获取id

时间:2014-05-21 06:30:52

标签: jquery asp.net

我有一个显示菜单的列表,还有一个按钮,可以使用对话框添加新项目。

我想用imagebutton进行编辑,我想使用带有图像按钮的对话框,但是转发器每次都会使图像按钮id增加,因此其名称会发生​​变化,而脚本无法通过Id找到它。

我创建onclientclick事件以打开对话框我也有click事件来获取行的ID。所以我有1 onclientclick和1个常规click事件。当我单击图像按钮对话框出现3秒钟然后它就会出现。我该如何解决这个问题?我认为它是因为2点击事件处理程序,但我无法通过Id获取按钮;我该怎么办?

注意:顺便说一下,我试图从id ++格式的转发器中选择id。并删除onclientclick并给它按钮Id点击但没有改变看起来像它不是因为2点击事件处理程序。仍然当我点击对话框时,它会在几秒内完成。有什么帮助吗?

<script>     

  $(function () {

     $("#dialog-form").dialog({
          autoOpen: false,
          height: 300,
          width: 350,
          modal: true,
        appendTo: AddForm,
      });



      $("#create-user")
        .button()
        .click(function () {
            $("#dialog-form").dialog("open");

        });

      $("#dialog-form-edit").dialog({
          autoOpen: false,
          height: 300,
          width: 350,
          modal: true,
          appendTo: AddForm,
      });




   });



  </script>

   

<div class="page-content-wrapper">
    <div class="page-content">




        <div class="row">
            <div class="col-md-12">
                <!-- BEGIN PAGE TITLE & BREADCRUMB-->
                <h3 class="page-title">
                MFT Haber Scripti V1  <small>Admin Paneli</small>
                </h3>
                <ul class="page-breadcrumb breadcrumb">
                    <li>
                        <i class="fa fa-home"></i>
                        <a href="index.html">Home</a>
                        <i class="fa fa-angle-right"></i>
                    </li>
                    <li>
                        <a href="#">Dashboard</a>
                    </li>
                    <li class="pull-right">

                    </li>
                    <li>
                    </li>
                </ul>
                <!-- END PAGE TITLE & BREADCRUMB-->
            </div>
        </div>
        <!-- END PAGE HEADER-->

        <div class="clearfix">

 <!-- BEGIN EXAMPLE TABLE PORTLET-->
                <div class="portlet box blue" >
                    <div class="portlet-title">
                        <div class="caption">
                            <i class="fa fa-edit"></i>Düzenleme Tablosu

                        </div>

                    </div>
                    <div class="portlet-body">
                        <div class="table-toolbar">
                            <div class="btn-group">


                            <input type="button" value="Yeni Ekle +" Id="create-user" class="btn green"   />    

                            </div>
                            <ul style="float:right">
                            <asp:Button ID="Button7" runat="server" Text="Seçilenleri Sil" BackColor="Red" CssClass="btn green" OnClick="Button7_Click" />
                            </ul>
                        </div>
                        <table class="table table-striped table-hover table-bordered" id="MenuDiv" >
                        <thead>
                        <tr>
                            <th>

                              Seç  

                            </th>
                            <th>
                                Baslik
                            </th>


                            <th>
                                Edit
                            </th>
                            <th>
                                Delete
                            </th>
                        </tr>
                        </thead>
                        <tbody>
                                                                      <asp:Repeater runat="server"     ID="repMasterMenu"><ItemTemplate>
                        <tr>
                            <td><asp:CheckBox ID="CheckBox1" runat="server"  /></td>
                            <td>
                                <%#Eval("MenuName") %>
                            </td>


                            <td>


                               <asp:ImageButton ID="Duzen" runat="server" OnClientClick="$('#dialog-form-edit').dialog('open');"   ImageUrl="~/admin/img/duzenle_16x16.gif"  CommandArgument=<%#Eval("Id") %>   onclick="Duzenle" Width="10px"  />

                                <!--<a href="#" class="btn default btn-xs purple"><i class="fa fa-edit"></i> Edit</a>-->
                            </td>
                            <td>
                                                                                                        <asp:ImageButton ID="Sil" ImageUrl="~/admin/img/sil_16x16.gif" runat="server" CommandArgument=<%#Eval("Id") %> onclick="sil" width="10px"/>

                                                                                <!--    <a href="#" class="btndefault btn-xs black"><i class="fa fa-trash-o"></i> Delete</a>-->
                            </td>
                        </tr>

                                      </ItemTemplate></asp:Repeater>
                        </tbody>
                        </table>
                    </div>
                </div>


                <!-- END EXAMPLE TABLE PORTLET-->

                 </div>
     <div id="dialog-form" >
 <p>All form fields are required.</p>



 <fieldset>
<label>Name</label>
 <asp:TextBox ID="name"  runat="server" ></asp:TextBox>

   

</div>

           <div id="dialog-form-edit" >
  <p>All form fields are required.</p>



<fieldset>
<label>Name</label>
<asp:TextBox ID="TextBox1"  runat="server" ></asp:TextBox>
<asp:Button runat="server" ID="Button1" Text="add me baby" OnClick="addmebaby_Click_click" />
  <asp:HiddenField ID="AdminId" runat="server" />
</fieldset>

    </div>



</div>



<!-- END CONTENT -->

  <!-- END CONTAINER -->

 </div>
 </form> 

1 个答案:

答案 0 :(得分:0)

&#34;转发器每次都生成图像按钮id ++&#34;

这就是Repeater(以及基于它们的控件)的工作原理。改为使用类替换jQuery。