Javascript - Multiple ModalPopUpExtenders On One Page Inside A UserControl?
Oct 12, 2010
I have 1 ModalPopupExtender inside a UserControl. Everything works great until I start adding the same usercontrol to the page. I am getting this error message in the javascript console::
Message: Sys.InvalidOperationException: Two components with the same id 'MPE1' can't be added to the application. I understand the error, it obvious that the framework wants unique IDs. What I can't figure out is how to give them unique name.
I have a page with a ModalPopupExtender already on it which is working fine. I added a second and third as well by copying and pasting the previous two ModalPopupExtenders and their respective Panels. The first one still works, but the other two do not work at all. I have verified that I changed the names of all controls on the ones I pasted. Is it not possible to have more than one pair of ModalPopupExtender and Panel on the same page?
Explaination in detail I have a tree view control on left of my page and AjaxToolkit:TabContainer on the right,consisting of 9 tabs in it (I have developed individual controls and added to the tab panels). On selecting a value from the tree view control the I am refreshing the values inside all the tab panels. There is a method reload written on all the controls which are called on tree view click which sets the value of the selected tree item in properties in all the controls and also refreshs them. Its a big performance issue for sure which i need to improve on but that would come later. My problem
1. In the Main tab (ascx control) consists of asp:chart control which I am populating and it also consists of 2 buttons in which ModalPopupExtender would open up another 2 controls on button click within this control. Now on the tree view click I am calling the reload of Main Tab which internally called the reload function of these 2 controls also
On Tree view click
Maintab.reload { ModalPopupExtender1.reload ModalPopupExtender2.reload } Secondtab.reload Thirdtab.reload If I populate the asp.chartcontrol without reloading the ModalPopupExtender1.reload ModalPopupExtender2.reload it works great but when I call both ModalPopupExtender1.reload ModalPopupExtender2.reload it shows up and goes away.
Any thing i am missing on ? How to make chart control stay on the page and not vanish. I tried making it visible again. The main page contains a chart control which comes and goes away and does not stay only if i comment out the reloading of these usercontrols it stays visible with values on the main page else goes away.
2.Performance problem- I am not sure how to lazy load the content inside the tab panels so that controls should have the selected item for tree view click and can populate thereon.
3. This is how I call my user controls to reload on the treeview click from within the main page. PEGeneralInfoPortfolioProfiler1.PortfolioCode = strPortfolioCode; PEGeneralInfoPortfolioProfiler1.ReloadControl(1);
I need to insert some JavaScript code inside a UserControl that I load from an Ajax call via jQuery Ui Tabs. Let me explain... This is my View (with jQuery loaded)
<script type="text/javascript"> $(document).ready(function () { $("#tabs").tabs({ cache: false, }); getContentTab (1); }); function getContentTab(index) { var url='<%= Url.Content("~/Home/getUserControl") %>/' + index; var targetDiv = "#tabs-" + index; $.get(url,null, function(result) { $(targetDiv).html(result); }); } </script> <div id="tabs"> <ul> <li><a href="#tabs-1" onclick="getContentTab(1);">Nunc tincidunt</a></li> <li><a href="#tabs-2" onclick="getContentTab(2);">Proin dolor</a></li> <li><a href="#tabs-3" onclick="getContentTab(3);">Aenean lacinia</a></li> </ul> <div id="tabs-1"> </div> <div id="tabs-2"> </div> <div id="tabs-3"> </div> </div> With these lines of code I call the Ajax function to load the content into a DIV. This is the Action from the controller: public ActionResult getUserControl(int num) { return PartialView("TestUC", num); } And this is the UserControl... <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %> Number... <span id="testSpan"><%=Model.ToString() %></span>!! <input type="button" value="Click me!!" onclick="message();" /> <script type="text/javascript"> function message(item) { alert($("#testSpan").html()); } </script>
The problem is that the message() function returns always 1 (instead of returning the correct number). My question is... How should I add the script to my UserControl in order to have my code running correctly?
I am using a usercontrol which has two textboxes named txtUserName,txtPassword and a button named btnSubmit.I am using this usercontrol in my webpage.I want to show alert message in the webpage if the user didnot enter the username or password .
i have a javascript color picker i can get it working fine in a aspx page, but i am unable to get it working in a usercontrol inside a update panel. I have tried using the following but i still cannot get it to workm the js file can be viewed at [URL]
I have a usercontrol that wprks fine as along as one instance is on a pageut as soon as i have two instances of it nothing works. I figured out that it could be the pageload function that adds handler for keydown and other that is the cause.As each instance is reproducing the same javascript in the viewsource.So can you tell me how can i make the usercontrol that it can have multiple nstances that have their own javascript pageload
I have a ShoppingCart UserControl on MasterPage. I have a following functionality: User adds item to the cart. after clicking the button "Complete Sale" in UserControl the page is redirected to "CustomerInfo.aspx" and after filling the Customer information and clicking on submit which is on CustomerInfo.aspx page i want to call the "Complete Sale" click event of UserControl from "Customerinfo.aspx" page.
I have created a usercontrol to capture education details, it contains 5 textboxes and an functionto insert that values into my db. I have added the usercontrol 5 times to a page. I have a button on my aspx page which I want to be able to click and call the function to insert the values.
i have 2 textbox controls inside a usercontrol TextBoxUC.ascx i have a page.aspx that contains the usercontrol. how can i get a reference to each textbox using javascript from page.aspx?
I have a page in a structure as follows. But the loading time of the page is takes 20 or more seconds. In usercontrols i'd used Telerik RadControls, for that reason i can't use updatepanel to avoid script problems or etc. I had tried to add usercontrols dynamically but there is about 14 usercontrols and it takes the same time period :(. I had tried using PartialUpdatePanel as in [URL] but it's not compatible with telerik controls. My client wants to have the all 14 usercontrols being in the same page (not divided by tabs or wizards)
Structure :
MasterPage Page 14 Usercontrols that contains RadListViews has couple postback events.
I've a ASP.Net page (Default.aspx) which will load UserControl (ucontrol.ascx) dynamically into an UpdatePanel. By using UpdatePanel, we believe we're able to prevent the entire page to be posted-back.
My problem is, within the UserControl, we have some form controls, such as inputs and buttons; after the UserControl is loaded, clicking on any button inside the UserControl will cause the UpdatePanel to be blanked. During the investigation, I found that, breakpoints within the Button1_Click() in the code-behind for the UserControl is never reached. Please reference to the code below, this references to [REFERENCE]1.
I've been working on an usercontrol with a jquery timer in it. At first I had the jquery within the usercontrol. But when I add 2 of those controls to my page the second usercontrol isn't showing it's data very well.Now I've put the jquery into the mainpage and the usercontrol only uses the id's of the jquery.
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %> <style type="text/css"> [code]...
I have a user control with a textbox. I am loading it at runtime on parent page with code behind.After click of button on a parent page i need the text of that usercontrol's textbox.
I tried with following code but it does not work for me
myusercontrol us = new myusercontrol(); TextBox textbox = (TextBox)us.FindControl("txtusercontrol"); string str = textbox.Text.ToString();
I have an asp.net usercontrol located on on my aspx page. In the usercontrol there is a javascript function that I would like to fire everytime the page that contains the usercontrol submits to the server. (directly before this happens) Ideally I prefer to not have to write any code in the parent to make this happen, but I am not sure what the usercontrol may be capable of at this time. Can the usercontrol know that the page is submitting to the server and fire the function before this happens? Is there some sort of event that takes place here?
I have created a Web Control in ASP for use in integrating with Telligent CommunityServer. The control is written in ASP with some 10 lines of C# backend for controlling visibility of the UI elements based on permissions, but I'd say 90% of the functionality is straight-up Javascript. The control works beautifully, until you drop two instances of the Control on the same page--since they reference the exact same Javascript functions, only one control works. How can I take this functionality that I have, this 1200 lines of Javascript, and make it so that each instance of the control can reference its each unique instance of Javascript?
I think I summed up the question in the title. Here is some further elaboration...I have a web user control that is used in multiple places, sometimes more than once on a given page.The web user control has a specific set of JavaScript functions (mostly jQuery code) that are containted within *.js files and automatically inserted into page headers.However, when I want to use the control more than once on a page, the *.js files are included 'n' number of times and, rightly so, the browser gets confused as to which control it's meant to be executing which function on.What do I need to do in order to resolve this problem? I've been staring at this all day and I'm at a loss.
I have a masterpage and inside that masterage is a user control that has a toolbar with a save button. I then have an aspx page that inherits form t he master page. In that page I have and updatepanel. Is it possible to set the post back trigger to the Save button inside the usercontrol?
I have a content page (<asp:content>) where I am using javascript and normally I am adding the attribut in the code-behind page. however I now need to add a javascript function that will cause when the body or panel loads. I have a test javascript function that simply shows an alert box but I cannot get it to display. Is there a special way to do this in a content page?
Im looking for a way to redirect to another page, when i click a link in the iframe. i dont want just the iframe to redirect, but the whole window.
is this possible?
preferably in javascript or in asp.net if possible
EDIT: When i try the answers i get redirected to the source of the iframe, not to the source of the site the iframe lies on... Ill show you the code
function redirect() { window.top.location.href = "./Nyheter.html"; }
As i dont want the code to be static, so that i can use it on many pages without changing the url, i want to do it this way, alt. get the url from db... but preferrably this way, Solution? Also, forgot to mention. The pages are not on the same domain, they are on different ones..