弹出窗口中按钮的单击事件不起作用

Click event from button inside popup is not working

我正在 ASP.Net 应用程序中使用 jQuery 创建弹出窗口 window。弹出窗口在单击按钮时打开。我写了下面的代码来打开弹出窗口。

html代码:

        <%-- Popup --%>
        <div id="modal_dialog" class="PopupStyle" style="display: none;">
            <table>
                <tr>
                    <td style="width: 100px">
                        <label class="control-label">Photo</label>
                    </td>
                    <td>
                        <asp:FileUpload ID="FileUpload1" runat="server" />
                        <asp:RegularExpressionValidator
                            ID="regexValidateImageFil" runat="server" ControlToValidate="FileUpload1"
                            ErrorMessage="Only file types with jpg, png, gif are allowed."
                            ValidationExpression="^([0-9a-zA-Z_\-~ :\])+(.jpg|.JPG|.jpeg|.JPEG|.bmp|.BMP|.gif|.GIF|.png|.PNG|.pdf)$"></asp:RegularExpressionValidator>
                    </td>
                </tr>
                <tr>
                    <td style="width: 100px">
                        <label class="control-label">File Type</label>
                    </td>
                    <td>
                        <asp:DropDownList ID="ddlUpFileType" runat="server" class="form-control" Width="400px">
                        </asp:DropDownList>
                    </td>
                </tr>
                <tr>
                    <td style="width: 100px">
                        <label class="control-label">Note</label>
                    </td>
                    <td>
                        <asp:TextBox ID="txtNotes" runat="server" class="form-control" MaxLength="150" Width="400px"></asp:TextBox>
                    </td>
                </tr>
            </table>
            <div style="padding: 10px">
            </div>
            <asp:Button ID="btnSaveUpoad" runat="server" class="btn btn-primary" Text=" Upload File " OnClick="btnSaveUpoad_Click" />
        </div>
    </form>
</div>

和 jQuery 代码:

<script type="text/javascript">
    $(document).ready(function () {
        $("[id*=btnUpoad]").on("click", function () {
            debugger;
            $("#modal_dialog").dialog({ width: 520 });

            $("#modal_dialog").dialog({
                title: "Upload Files",
                buttons: {
                    Close: function () {
                        $(this).dialog('close');
                    }
                },
                modal: true
            });
            return false;
        });
    });
</script>

如您所见,我的 html 中有一个按钮,即

<asp:Button ID="btnSaveUpoad" runat="server" class="btn btn-primary" Text=" Upload File " OnClick="btnSaveUpoad_Click" />

但点击事件(来自弹出窗口内的按钮,即 btnSaveUpoad)并未调用 .cs 文件中编写的相应函数。

任何想法。

提前致谢。

帕萨

您的 onclick 没有调用该函数,因为您缺少 () 来调用它

改变

OnClick="btnSaveUpoad_Click"

OnClick="btnSaveUpoad_Click()"

在单击事件上使用 Jquery 进行绑定。此外,我建议您在模型完全加载后创建按钮事件 f。

$( "#dataTable tbody tr" ).on( "click", function() {
  console.log( $( this ).text() );
})

查看模态的创建和显示。您可以在以下函数中添加要初始化的事件

$( "#code" ).on('shown', function(){
    alert("I want this to appear after the modal has opened!");
});
Try this for your solution:
$(document).on("click", "[id*=btnUpoad]",function () {

这可能对你有用。

jQuery 行为不同 当您直接使用 class 分配任何按钮事件时,它只会与 DOM 中的当前 class 一起使用,但是如果假设在 DOM 中添加了新的文档内容并且您想要在新添加的 DOM 元素上触发点击事件。那你就得用这个

   *For current DOM 
    jQuery(".abc").click(function(){});*

    *For dynamic dom element 
    jQuery(document).on("click", ".abc", function(){});*