[英]how to call the jquery function in .aspx page to usercontrols controls in asp.net?
i have the following function in default.aspx.....i have webusercontrol which have 10 checkboxes and 1 button .... i want when i click on button1 of user control then it can access the function of default.aspx ...page ...if i dragged the usercontrol to default.aspx 我在default.aspx中具有以下功能.....我具有webusercontrol,其中具有10个复选框和1个按钮....我想当我单击用户控件的button1时,它可以访问default.aspx的功能。 .page ...如果我将用户控件拖动到default.aspx
Normally if i use 10 checkboxes and 1 button in default.aspx then it works fine ... if i use 10checkboxes and 1button in usercontrol then drag that usercontrol in default.aspx then it will not work .. 通常,如果我在default.aspx中使用10个复选框和1个按钮,那么它可以正常工作...如果在usercontrol中使用10checkboxes和1个按钮,然后在default.aspx中拖动该用户控件,则它将无法工作..
what was the problem ...how to fix this ? 这是什么问题...如何解决?
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>
<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<uc1:WebUserControl ID="WebUserControl1" runat="server" />
</div>
</form>
<script src ="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script>
<script type="text/javascript">
$("#'<%=Button1.ClientID %>'").click(function(){
var vCheckedCBCount = $("input:checkbox").filter(function(index){
return $(this)[0].checked == true;
}).length;
if(vCheckedCBCount > 1)
{
alert('You cannot check more than 1 check box.');
return false;
}
});
</script >
</body>
</html>
When you added the usercontrol to default.aspx, the ID of Button1 changed to userControl1_Button1
当您将usercontrol添加到default.aspx时,Button1的ID更改为userControl1_Button1
So you need to change $("#Button1").click(function()
so that it will always have the correct name for the button: 因此,您需要更改$("#Button1").click(function()
,使其始终具有正确的按钮名称:
$("# + <%=Button1.ClientID %> +").click(function()
Try 尝试
$("#'<%=Button1.ClientID %>'").click(function(){
});
A usercontrol implements INamingContainer Interface. 用户控件实现INamingContainer接口。 So in order to get the elements using id you need to get the runtime generated id by using .ClientID
. 因此,为了使用id获取元素,您需要使用.ClientID
获取运行时生成的id。
Try this one --> 试试这个->
------------------------------------ASPX Code------------------------------------------------------------------------------ ------------------------------------ ASPX代码------------ -------------------------------------------------- ----------------
ASPX: ASPX:
<%@ Register Src="~/UserControl/WebUserControl.ascx" TagName="ucCheckBox" TagPrefix="UC" %>
<UC:ucCheckBox ID="ucCheckBox" runat="server" />
JAVASCRIPT: JAVASCRIPT:
$(document).ready(function(){
$("input:submit[id$='btnSubmit']").click(function(){
var vCheckedCBCount = $("input:checkbox").filter(function(index){
return $(this)[0].checked == true;
}).length;
if(vCheckedCBCount > 5)
{
alert('You cannot check more than 5 check box.');
return false;
}
});
});
------------------------------------ASPX Code------------------------------------------------------------------------------ ------------------------------------ ASPX代码------------ -------------------------------------------------- ----------------
-------------------------------User control code-------------------------------------- -------------------------------用户控制代码---------------- ----------------------
UserControl: 用户控件:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="UserControl_WebUserControl" %>
<asp:CheckBox ID="CheckBox1" runat="server" /><br />
<asp:CheckBox ID="CheckBox2" runat="server" /><br />
<asp:CheckBox ID="CheckBox3" runat="server" /><br />
<asp:CheckBox ID="CheckBox4" runat="server" /><br />
<asp:CheckBox ID="CheckBox5" runat="server" /><br />
<asp:CheckBox ID="CheckBox6" runat="server" /><br />
<asp:CheckBox ID="CheckBox7" runat="server" /><br />
<asp:CheckBox ID="CheckBox8" runat="server" /><br />
<asp:CheckBox ID="CheckBox9" runat="server" /><br />
<asp:CheckBox ID="CheckBox10" runat="server" /><br />
<asp:Button ID="btnSubmit" runat="server" Text="Continue" />
-------------------------------User control code-------------------------------------- -------------------------------用户控制代码---------------- ----------------------
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.