Javascript - Get Client - Side Script To Execute On Postback (from An UpdatePanel)?
Jul 15, 2010
Basically I want to get some javascript to be sent back to the client and executed from a postback inside an UpdatePanel. Furthermore this is inside of a reusable WebControl. I've tried
this.Page.ClientScript.RegisterStartupScript and this.Page.ClientScript.RegisterClientScriptBlock but Firebug shows that those scripts aren't sent back in the postback's response.
I also tried straight up writing a <script> tag inside the control's main div in the Render method, which does get sent back but isn't executed. I got a hacky solution working, but ideally looking for a cleaner solution. The hack is to add a 1x1 pixel img with width/height set to 0 and use that for an onload event to execute the script and that works, but it seems like there has to be a cleaner way to do this.
View 1 Replies
Similar Messages:
Jul 8, 2010
I have two checkboxes: cb1 and cb2. They are both hooked up to an onClick event which checks if at least one checkbox is clicked. If this is not the case, it throws an alert and reverts the change. If a legal change was made (e.g. cb2 was checked, followed by cb1 being unchecked), the function calls the server function checkChange() which needs the object and eventargs.
I'm having trouble with the following:
Reverting the change: how can i find out which checkbox was clicked without adding an extra javascript function for the second checkbox? This has to be a scalable solution as more checkboxes may be added later.
How do I call the server function checkChange(). I am aware of "this.Page.GetPostbackEventReference" but I am confused as to the parameters it takes.
View 1 Replies
Mar 8, 2010
I encouter some postback issue when using GetPostBackEventReference. Here is the Scenario:I have a javascript modal popup dialog and got a button in this modal dialog which used to select things (this is NOT an asp:button control)
When this javascript dialog HTML button is clicked, it will call the MS AJAX web service call by the javascript: eval() method. And this MS AJAX web service call is dynamically generated. So the code is like this:
var serviceCall = svcCall + "(" + parameters + ")"; //dynamically generate the MS AJAX web service call here
eval(serviceCall);
//use eval to trigger the MS AJAX web service call
As you may all know, after complete the MS AJAX web service, you can define a callback function to handle the completion:
function OnComplete(result, userContext, methodName) {
//force to call postback manually
eval($(userContext[0]).val()); [code]...
As you can see, this is how I bound the asp:button (i.e. btnSelectUser) 's Click Event to the asp:hiddenfield using the GetPostBackEventReference, and set the registerForEventValidation argument to false. I have also tried to use different ValidationGroup and set the CausesValidation to false.In summarize, I bound the asp:button's Click PostBackEventReference(i.e. __doPostback(....)) to the asp:hidden field's Value attribute, and using javascript eval() to eval this hidden field's value in order to manually trigger postback.
p.s. the btnSelectUser is an asp:button control and used to call out the javascript modal dialog.
Ok, here is the Problem:In the same page, there is some asp:validator, e.g. and , and of coz, when the page run into error, this validator and callout will display to the user. e.g. When the user didn't fill in anything and submit the form, the ValidatorCalloutExtender will display a ballon and tell the user. Imagine one of this ballon/validatorCalloutExtender come out and on top of your screen at the moment.
Then you click the btnSelectUser (asp:button) to show the javascript modal dialog, and in the dialog, you Add some users, and once you hit the SELECT button inside this modal dialog, a MS AJAX web service is trigger as mentioned above, and once this web service is complete, it eval() the asp:hidden field's value (i.e. __doPostback(...))......and do the postback manually.
However, because of the validatorCalloutExtender ballon has display, it somehow cannot trigger the postback in this way, but when I close the ballon/validatorCalloutExtender, the manual postback using eval() is just working fine. Even more strange is that, when the ballon is displayed, the first time I click the SELECT button inside this modal dialog it doesn't fire the postback, however, if I do the same thing again (i.e. open up the javascript dialog, and choose some users, then click the SELECT button again). It able to do the manual postback....and I don't understand why the first time doesn't work.
View 1 Replies
Dec 30, 2010
I'm losing client side href. Is it possible to send it back to the server on the button submit using a variable or something?
View 1 Replies
Nov 23, 2010
I have a user control which contains a CustomValidator which is used according to whether a RadioButton is checked or not (there are several RadioButtons, I'm only showing the relevant one)
<asp:RadioButton runat="Server" ID="RadioBetween" GroupName="DateGroup" CssClass="date_group_options_control_radio" />
[code]...
There is some client + server side validation code (the server side code does exactly the same thing and is skipped for brevity)
<script type="text/javascript">
function ValidateDateFields_Client(source, args) [code]...
There are two instances of this control in the page. When running the client side version it hits the wrong one (the version of the control which is disabled). You can see from the generated HTML both are correctly specified. I'm not sure how .NET works out which clientside function to call given they both have the same name.
<script type="text/javascript">
//<![CDATA[
var ctl00_MCPH1_QueryTextValidator = document.all ? document.all["ctl00_MCPH1_QueryTextValidator"] : document.getElementById("ctl00_MCPH1_QueryTextValidator");
[code]...
Do i need to add something in to scope it? What's the best way to achieve this? If I disable the loading of the second control everything works fine.
View 1 Replies
Jan 31, 2011
Is it possible to execute two or more client side functions with a single button click? (I have written 3 functions in my .aspx page and need to validate on client side)
send me sample code with 3 client side functions using single button click.
View 1 Replies
May 18, 2010
i am not sure if my design have flaw but would like to know what others have to say, i am in a situation where i am trying to acheive two things in one click.
using : asp.net web form
i have a web form with few textbox and a gridview control and a button.
if i click on the button i am executing two things
1) asynchronously get data from server to client (working great) and able to display the data in the textboxes.
2) same click i want to bind the gridview.
[Code]....
recap:
1) jquery script execute asynchronously to get data from server to client and display in the textboxes
2) server side code to bind the gridview.
PROBLEM:
if i have onClientClick="return LoadDataById(); then it executes ONLY ajax code and does not execute server side but if have onClientClick="LoadDataById(); then it executes client and server but textbox value wipeout. (the textbox value popuplate through ajax)
View 2 Replies
Jun 8, 2010
When a user clicks a button I need to create a .bmp file on the server. After the .bmp file is created I will load it into the html page. Would Ajax be the best way to accomplish this?
View 6 Replies
Dec 9, 2010
I have the following:
<asp:UpdatePanel ID="upd" runat="server">
<ContentTemplate>
<script> alert("execute again"); </script>
<asp:LinkButton ID="go" runat="server" Text="Exec JS" />
</ContentTemplate>
</asp:UpdatePanel>
The first time the page renders the script is executed. If I click the button to cause a postback it doesn't execute again. Is there a way to make it execute the scripts again?
View 3 Replies
Jan 28, 2011
iam using the Jquery Uframe with asp.net project.Iam getting a postback problem here.
In side the uframe ,button control getting postback the page even the client side method call also.
i tried with the Html button Control also by setting the type="submit" ,iam facing the same problem.
And I got very limited reference about the uframe(codeflex,codeProject).
View 6 Replies
Dec 9, 2010
I have a requirement of adding server side variables in client side and other way round. Because I need to set a value from client side using javascript and access the same in code behind page.
I have to use C#.Net and JavaScript.
View 2 Replies
Feb 11, 2011
I have a list of items on an ASP.net page. That list is selectable in that whenever the user clicks on one, the page does a postback and the server code stores the index or some unique identifier of the picture in a ViewState property indicating that it is currently selected.
I would like to minimize the load on the server and therefore I would like to store the index or unique identifier representing the image in some way on the client side. The best way I can think to do this is to store said information in a hidden field ), however I had two questions about this before I go crazy:
Is this a security risk in any way, shape or form (i.e., exposing implementation details of the page)?
Is there a better/best way to do this that is more industry-standard? Does ASP.net provide a framework to do this that is cleaner than my idea? Seems like this would be a fairly common requirement to me...
View 1 Replies
Feb 15, 2011
Ive got on my aspx page button with code:
OnClick="save_Click"
Is it possible to execute javascipt before postback and if result is true then do postback and go to method save_click and if not just ignore it ?
View 3 Replies
Sep 14, 2010
Possible Duplicates: how to call server side function from client side - asp.net Calling ASP.NET Code Behind function from Javascript Calling ASP.NET server side method via JQuery While loading an aspx page, how is it possible to call a server side method with the client side code?Can u show one example?
View 4 Replies
Feb 11, 2011
I have two comboboxes and would like pass selected value and text to the server method (RadComboBoxItemsRequestedEventArgs) when the first combobox selected index changed.
Here is my code. But I am getting Javascript error message at this line. RadComboBox2.requestItems(item, false).
[code]....
View 1 Replies
Jul 7, 2010
I have an UpdatePanel with a repeater in it that is re-bound after a user adds an item to it via a modal popup. When they click the button to add a new row to the repeater the code-behind looks something like this:
protected void lbtnAddOption_Click(object sender, EventArgs e)
{
SelectedOption = new Option()
{
Account = txtAddOptionAccountNumber.Text,
Margin = chkAddOptionMargin.Checked,
Symbol = txtAddOptionSymbol.Text,
Usymbol = txtAddOptionUsymbol.Text,
};
Presenter.OnAddOption(); // Insert the new item
RefreshOptions(); // Pull down and re-bind all the items
mpeAddOptionDialog.Hide(); // Hide the modal
// ... Make call to jQuery scrollTo() method here?
}
This works fine and the new row will show up quickly via the UpdatePanel. However, there are often hundreds of rows and where the new one is added is based on the current sorting column used. So, I wanted to take this as a chance to use the sweet jQuery ScrollTo plugin. I know that if I give it the ID of my overflowed container div and the ID of an element within it, it will smoothly scroll straight to the users newly added row. However, there are two problems:
I need to find the appropriate row so I can snag the ClientID for it. I need to execute the jQuery snippet from my code-behind that will cause my newly updated repeater to scroll to the right row. I've solved #1. I have a reliable method that will produce the newly added row's ClientID. However, problem #2 is proving to be tricky. I know I can just call ScriptManager.RegisterStartupScript() form my code-behind and it will execute the JavaScript on my page.
The problem I'm having is that it seems that it is executing that piece of JavaScript before (I'm guessing) the newly refreshed DOM elements have fully loaded. So, even though I am passing in the appropriate jQuery line to scroll to the element I want, it is erroring out for me because it can't find that element yet. Here is the line I'm using at the end of the method I posted above:
string clientID = getClientIdOfNewRow();
ScriptManager.RegisterStartupScript(this, typeof(Page), "ScrollScript", String.Format("$("#optionContainer").scrollTo("{0}", 800);", clientID), true);
What do I need to do so I can ensure that this line of JavaScript isn't called until the page with the UpdatePanel is truly ready?
View 2 Replies
Mar 7, 2010
I'm working on developing a custom control to select items from a predefined list. This is accomplished via 2 ASP.NET ListBox controls, with a few buttons to trigger the movement of ListItems from one ListBox to the other (lets call these ListBoxes lstSelected and lstDeselected).
This is easy enough to do in ASP.NET or JavaScript independently: I have both working. However, if modifications are made via JavaScript, ASP.NET retains no knowledge of this. Is there any way to register the creation of of options in a select tag without AJAX?
View 2 Replies
Mar 20, 2010
I've got a function I wrote quite some time ago that works fine, but I'd like to speed up the process and lessen server load by doing the same job in Javascript.I seem to be able to GET textbox values ok, but I can't seem to SET textbox values (I'm'-a JS noob). Can anyone lend a hand in converting my VB.NET code to it's JS equivalent?
Protected Sub txtSellingPrice_TextChanged(ByVal sender As Object, ByVal e As EventArgs) _
Handles txtSellingPrice.TextChanged
Dim SellingPrice As Double = Double.Parse(txtSellingPrice.Text.Replace("$", ""))
[code]...
View 2 Replies
Mar 24, 2011
I want to ask how to get the value of var title :
From this code :
protected void btnSubmit_Click(object sender, EventArgs e)
{
string script = "var title = $('.rsApt').attr('title');";
ClientScript.RegisterStartupScript(GetType(),"popup", script, true);
}
View 2 Replies
Jun 11, 2010
Executing Server side code using Javascript. Here is the solution.In the Asp.net forums, I often see the question asked, "Can I call server-side code from the client/JavaScript?" Almost invariably, the responses given are "No, the client cannot access the server," or "You can only use WebMethods or PageMethods." The first response is not entirely correct, and unfortunately, WebMethods and PageMethods are static methods and therefore have no way to directly access the page.This is why I present to you the following "hack". I call it a hack because there really should be some way built into the ASP.NET AJAX Extensions that allow this approach directly. Instead, it relies on using controls in a manner that they aren't necessarily intended in order to obtain the desired result. But this "hack" does have a redeeming quality—it's incredibly easy.The Code:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
[code]...
View 1 Replies
Jun 11, 2010
I have some validation JS code on client, that must be executed befor PostBack.If this validation code return 'false', postback is needless.How it can be disabled?
View 5 Replies
Aug 30, 2010
I want to enhance a composite control's client side, my approach is to recreate all method on JavaScript, so here I have some troubles:Can I call onclick event on client side otherwise on server side?the statement table.onclick=SelectRow(event) fires a bug!Code:
function Control_Init() {
if( !(document.getElementById) ) { return; }
for( var i = 0; i < Controls.length; i++ ) {
[code]...
View 1 Replies
Dec 22, 2010
Once I set it to static for my jquery purpose its not doing asyc postbacks and it always getting full post backs with page flickering...
<asp:Button ID="btntwo" runat="server" Text="Next" OnClick="btntwo_Click" UseSubmitBehavior="false" ClientIDMode="Static" />
i have to use UseSubmitBehavior="false" for my validation purposes....if i remove this property it is working fine.
View 3 Replies
Mar 10, 2010
I have buttion on web page and client side java script ConfirmResetPassword() for confirmation message which return true or false
[Code]....
if (confirm("Are you sure you want to reset password of this user?")) {
return true;
}
return false;
}
}with Telerik AjaxSetting[Code]....
<input type="button" name="ctl00$ContentPlaceHolder1$btnResetPassword" value="Reset Password" onclick="javascript:return ConfirmResetPassword();__doPostBack('ctl00$ContentPlaceHolder1$btnResetPassword','')" id="ctl00_ContentPlaceHolder1_btnResetPassword"
/> ?
View 5 Replies
May 14, 2010
I am developing a web page where a user will submit some "Comments" on a form. When they click the submit button, I fire off some javascript that captures their current GPS location, which I store in a visible Text Box (for testing purposes). If the user is updating from a device that doesn't support gps, I add text to my textbox that says "Device does not support GPS".
When I get to the server, using a device that doesn't support GPS, that text comes through just fine. When I use my iPhone, I see the GPS Coords in my textbox, but that textbox value doesn't make it to the server.I'm thinking that there is a 2-3 second delay from the time that the button is clicked to the time that the java finishes retrieving the GPS. So the textbox text isn't set fast enough.I'm wanting to prevent a postback for 3 seconds (for example) to give the javascript time to update the textbox.
View 4 Replies