我的modalpopup有多个取消控件,但只有btnCancel工作,$ find()。点击不起作用,我收到“错误:无法获取属性'click'的值: object为null或undefined“ 任何帮助将不胜感激。
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
CodeBehind="WebForm1.aspx.cs" Inherits="web.WebForm1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:ScriptManager runat="server" ID="scriptManager" EnablePageMethods="true">
</asp:ScriptManager>
<asp:Button ID="btnShowPopupAmend" runat="server" />
<asp:ModalPopupExtender ID="mpeAmend" runat="server" TargetControlID="btnShowPopupAmend"
PopupControlID="pnlpopupAmend" CancelControlID="btnCancel" BackgroundCssClass="modalBackground" />
<asp:Panel ID="pnlpopupAmend" runat="server" Width="700px" Style="display: none;"
class="ModalPanel">
<img src="images/close.png" style="cursor: hand" onclick="$find('btnCancel').click()"
width="15" height="15" />
<asp:Button ID="btnCancel" Text="Cancel" runat="server" OnClick="btnCancel_Click" />
</asp:Panel>
</asp:Content>
答案 0 :(得分:1)
我从元素中取出逻辑......
在您的图片上添加了一个ID,例如'closeImg'
然后你的js可以是这样的:
$('#closeImg').click( function() {
$('#btnCancel').click();
});
$('#btnCancel').click( function() {
//whatever you want to have happen
});
确保把它放在$(文件).ready()中,以便为它加载dom
答案 1 :(得分:0)
$ find语法不正确。另外,要选择一个id,我们需要在元素的id之前使用'#'。您可以尝试以下方法:
$('#btnCancel').click()
或
$("body").find('#btnCancel').click()
同样@smerny提到。尝试从模板中取出逻辑并将调用包装在就绪函数中。
就绪功能可写为
<script>
$(document).ready(function(){
$('#btnCancel').click();
});
</script>
答案 2 :(得分:0)
好的,我使用以下内容让它工作......
我设置modalpopupextender的behaviorID,然后在图像的onclick事件中调用$ find()。hide()。
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
CodeBehind="WebForm1.aspx.cs" Inherits="web.WebForm1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:ScriptManager runat="server" ID="scriptManager" EnablePageMethods="true">
</asp:ScriptManager>
<asp:Button ID="btnShowPopupAmend" runat="server" />
<asp:ModalPopupExtender ID="mpeAmend" BehaviorID="mpeAmend" runat="server" TargetControlID="btnShowPopupAmend"
PopupControlID="pnlpopupAmend" CancelControlID="btnCancel" BackgroundCssClass="modalBackground" />
<asp:Panel ID="pnlpopupAmend" runat="server" Width="700px" Style="display: none;"
class="ModalPanel">
<img src="images/close.png" id="imgClose" alt="" style="cursor: hand" onclick="$find('mpeAmend').hide()"
width="15" height="15" />
<asp:Button ID="btnCancel" Text="Cancel" runat="server" OnClick="btnCancel_Click" />
</asp:Panel>
</asp:Content>