Javascript 如何使用jquery查找Datalist控件的clientID?
我有一个带有ModalPopupXtender控件的数据列表。单击数据列表中的div时,显示ModalPopupXtenderJavascript 如何使用jquery查找Datalist控件的clientID?,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个带有ModalPopupXtender控件的数据列表。单击数据列表中的div时,显示ModalPopupXtender <asp:DataList ID="AdsDataList" runat="server" RepeatColumns="4" RepeatDirection="Horizontal"> <ItemTemplate> <div class="Detail_Content" id="detail
<asp:DataList ID="AdsDataList" runat="server" RepeatColumns="4"
RepeatDirection="Horizontal">
<ItemTemplate>
<div class="Detail_Content" id="detailcontact" runat="server"
onclick="return OpenPopup();">
<label><%# Eval("Name") %></label>
</div>
<asp:Panel ID="Panel2" runat="server" Style="display: none;">
<div class="popup_block" style="width: 550px;left:30%;top:100px">
<label><%# Eval("FatherCategoryName")
</div>
</asp:Panel>
<cc1:ModalPopupExtender runat="server" ID="ModalPopupExtender1"
TargetControlID="detailcontact" PopupControlID="Panel2"
PopupDragHandleControlID="header" DropShadow="false"
RepositionMode="RepositionOnWindowResizeAndScroll" X="400" Y="130"
BackgroundCssClass="modalBackground"CancelControlID="btnclose1" />
</ItemTemplate>
</asp:DataList>
var modalWindow = $("[id*=AdsDataList] [id*=ModalPopupExtender1]");
及
$find(“#”);
但是得到错误
“对象引用未设置为对象的实例。”
如何使用jquery查找Datalist控件的clientID?您是否尝试过直接获取它。。。如果id是唯一的..这应该适用于您的情况
var modalWindow = $("#ModalPopupExtender1]");
......
您可以利用jQuery的同级选择器。
作为
面板
渲染为div
,它就在您单击的div
旁边
function OpenPopup() {
$(this).next("div").show();
}
或者将一些css
类放在div
和panel
上,您可以如下使用jquery
$(".divClass").click(function() {
$(this).next("div.pannelclass").show();
});
其中.divClass是您的cssclassdiv
,pannelclass
是您面板的cssclass
jQuery选择器详细信息编辑-1 编辑2 隐藏模型弹出窗口的链接
您应该能够在不使用JQuery的情况下通过调用以下命令来定位控件
var dataListControl = document.getElementById('<%:AdsDataList.ClientID%>')
var dataListControl=document.getElementById(“”)
使用JQuery
var dataListControl = $find('<%:AdsDataList.ClientID%>')
var dataListControl=$find(“”)
或
var dataListControl=$(“”)
单击数据列表中的任何模板时,请使用此代码
function (e) {
var ModalPopupExtender1= $(this).closest('tr').find('#<%=ModalPopupExtender1.ClientID %>');
e.preventDefault();
});
函数(e){
var ModalPopupExtender1=$(this.closest('tr')。find('#');
e、 预防默认值();
});
谢谢,但是当我使用它时。我收到错误“名称“ModalPopupExtender1”在当前上下文中不存在”谢谢,我使用此代码并在代码中添加了一个alert(),但在单击div时不运行它。您是否在面板和您的div上都添加了css类
?非常感谢,当单击background时如何隐藏ModalPopupExtender1。Thnaks,我以前经常使用此代码,但是当我在datalist中有一个弹出窗口时,如何找到“_backgroundElement”并在Edit-1代码中添加处理程序?!!谢谢,但我想在datalist中找到控件的clientid。这很难,但是如何找到ModalPopupExtender1_backgroundElement?什么是backgroundElement?
var dataListControl = document.getElementById('<%:AdsDataList.ClientID%>')
var dataListControl = $find('<%:AdsDataList.ClientID%>')
var dataListControl = $('<%: AdsDataList.ClientID%>')
try this....if model id is unique
var model = $("[id$=ModalPopupExtender1]")
or if not unique then use...
OpenPopup(this) ...
function (ob)
{
var e = $(this).parent().find("div#ModalPopupExtender1");
}
function (e) {
var ModalPopupExtender1= $(this).closest('tr').find('#<%=ModalPopupExtender1.ClientID %>');
e.preventDefault();
});