Ajax - Callback To Encoded URL With UTF Characters Fails On IE?
Jan 4, 2010
I have Russian blog built with BlogEngine.NET 1.5.
I use Russian words in links encoded with URLEncode, so links are human-readable in most browsers - FF, Chrome, Opera (except for IE, but this is not the real problem with this browser). This idea is not mine, I borrowed it from Wikipedia - it uses encoded URLs on localized sites.
The real problem is that when I am trying to add comment in IE8 it fails (and only on production machine, development environment works fine).
Using Fiddler I found out that IE tries to send AJAX callback using WebForm_DoCallback to wrong address - it seems that it decodes URL, gets wrong characters and asks page with that wrong address from server and (of course) receives 404.
Here is how incorrect request from IE looks in Fiddler:
POST /ru/post/�������������-�����.aspx HTTP/1.1
Here is how FF makes same request and gets correct response:
POST /ru/post/%D0%92%D1%81%D1%82%D1%83%D0%BF%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5-%D1%81%D0%BB%D0%BE%D0%B2%D0%BE.aspx HTTP/1.1
I upgraded solution from default ASP.NET 2.0 for BE to ASP.NET 3.5 but this changed nothing. I made some minor changes in BE to allow properly encoded UTF links - by default it wipes out percent symbol from links.
what wrong is with IE behavior here and how to fix it? Why development environment under ASP.NET Development works different from production machine under IIS6? Why IE does not decode link in address bar (like other browsers) but does it when making request?
View 1 Replies
Similar Messages:
Nov 5, 2010
I'm having a problem using a xml file as datasource for my gridview.
I create this xml file myself using XMLTextWriter class, the file is created parsing an existing excel file so I don't have control over the data retrieved from the excel file. Using XMLTextWriter does encode the special characters correctly, for example: <Enter> instead of <Enter>. The problem is when I try to open this created xml for editing, I use a GridView and bind all the data but special character data is not show in the row.
Excel Data: Enter “E” or “e” and press <Enter>
XML Data: Enter “E” or “e” and press <Enter>
Data in GridView: Enter “E” or “e” and press
Is there a way to force the the GridView to decode the xml attributes correctly?
View 10 Replies
Feb 18, 2011
--AND (CONTAINS(O.OrgName, N'"3 step*"')) ORDER BY O.OrgName ( Contain function fails for a string with single character followed by space)
AND O.OrgName
like
'3 step%'
ORDER
BY O.OrgName(Works
perfectly fine)
Contain function fails for a string like 3 step, @ fire etc which has single characters followed by space.
View 4 Replies
Feb 1, 2010
I have a problem with MaskedEdit's mask for the code shown below:
[Code]....
When I'm starting to print date in the TextBox, mask moves with characters. Mask characters don't hide under typing characters.
View 7 Replies
Oct 6, 2010
Whenever a postback would occur (AJAX'ed by an UpdatePanel) I want to do a callback beforehand and only after the callback has completed (either successfully or not) should the postback occur. How can I do this?
Elaborate explanation: We use ASP.NET AJAX (UpdatePanel 'n stuff) together with DevExpress controls. Among those controls is the ubiquitous GridView. As is typical with ASP.NET gridviews, you can edit rows one-by-one, and to save your changes you have to hit the "update" button at the end of the row. However if you make some changes to the row, then forget to press the "update" button, and hit something else in the page (say the big red SAVE button that causes a postback and saves the whole form to the DB), your changes will be lost. The row will still be in edit mode, but it will have reset to the data it had initially when you started the edit.
Our clients are not happy with this and want the row to be saved automatically if the user forgets to do so himself. Luckily the DevExpress gridview is smart enough to have an "Update()" method which I can call from JavaScript. Unluckily that causes a callback and returns immediately. If I allow the postback to continue as normally, the callback will get aborted. Well, technically it's a race condition I guess, but so far it seems that the postback wins. There are events to which I could attach for success/failure of the callback, but I don't know how to "resume" the postback that started it all. We could turn off callbacks for all the grids, but that would be a performance disaster.
View 1 Replies
Aug 27, 2010
I need to send som parameters to the callback function of my AJAX call, how can i do that: ex.
[Code]....
View 8 Replies
Apr 22, 2010
I have a updatepanel which contains of a few dynamically created ImageButtons (the ImageButtons are placed in a panel inside the updatepanel) Since the imagebuttons are children of the updatepanel they automatically triggers a callback to server, fine. But I want the user to be able to cancel the callback after clicking on the imgbutton, preferably through a javascript window.confirm.
I have managed to make it work with a jquery function returning false (i dont know why it works, dont really understand asp.net ajax functionality) but it only works until a callback is done, then I guess I have to rebind the jquery to the controls in the updatepanel or?this turned out to be a jquery question. How do I rebind the recently loaded controls in my updatepanel to my jqyery function? the controls all have the same class and I use that to trigger the jquery function.
aspx file
..
..
$('.myImgButtons').click(function(){
if(window.confirm('Cancel callback?') )
return false;
});
..
..
<asp:UpdatePanel ..... >
<ContentTemplate>
<asp:panel id="myPanel" ........ ></asp:Panel>
</ContentTemplate>
<Triggers>
..whatever..
</Triggers>
</asp:UpdatePanel>
aspx.cs file
..
..
ImageButton dyn_ImgButton = new ImageButton();
dyn_ImgButton.Attributes.Add("class", "myImgButtons");
add dyn_ImgButton to myPanel
..
..
View 9 Replies
Jan 15, 2011
I'm using ajax to call a webmethod from javascript. The call is successfully made to the webmethod but I'm not able to access the parameters I passed to the webmethod inside of the "OnSucceeded" callback method. I need access to those params because I need to perform more tasks on the client side when the webmethod returns. I'm assuming that the params are returned inside "usercontext", but the value of that param is "null" How can I have access to those params?
Here my sample code:
function OnSucceeded(result, usercontext , methodName)
{
alert( result + ' The value of usercontext is: ' + usercontext);
}
function OnFailed(error, userContext, methodName)
{
alert('Attempt to delete semantic attribute from page failed!');
}
function deleteSemanticAttribute()
{
var username = 'xxxxxx';
var password = 'yyyyyy'
PageMethods.GetMyData(username, password, OnSucceeded,OnFailed);
}
[WebMethod]
public static string GetMyData(string username, string password)
{
return "This is my test application!";
}
View 2 Replies
Jun 3, 2010
why a ModalPopup.Show() wouldn't do anything (wouldn't result in showing anything) if called in a server side event handler for a callback ?
View 2 Replies
Jan 21, 2010
I have updatePanel in my ASP.NET 2.0 (migrated from ASP.NET 1.1) web app. It doesn't work as it always postback instead of callback. I already set<xhtmlConformance mode="Transitional" /> but still not working. Previously, it just working.
[Code]....
View 5 Replies
Nov 21, 2010
I'm having this wierd issue I hope you could help me with.I have two drop down lists in my page, and an accordion.When a value is chosen for the first DDl it loads specific values from my database into the second ddl.I've put the second one inside an Update panel, and added the first DDL as AsyncTrigger, so whenever someone chooses a value from the first DDL it loads the second one without refreshing the page.After a value has been chosen for the second DDl the accordion should be populated with data.I've ran some tests and noticed that choosing a value from the second DDL won't populate the accordion, so I've added another PostBack trigger to the second DDL- the ddl itself.Sometimes it works fine- I choose a value from ddl2 and the accordion shows fine, but sometimes I get this error message:Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation."Before putting the second ddl inside the update panel everything worked well so I'm a bit baffled here.
View 3 Replies
Jun 23, 2010
Is it possible to measure the elapsed time from when a user clicks an 'ajaxified' button until the ajax controls are updated?
I'm using ASP.Net v4, Visual Studio 2010, C#, and the MS AjaxToolkit.
View 3 Replies
Apr 27, 2010
is anybody interesting in share and join to develop callback web controls. My purposes is lower unsynchronized page development cost. I have developed a base class and a set of common controls. Currently, they allowed to be loaded dynamically in a control or ASCX via callback event using sample server side code. Control library code will automatically register javascript and render it on client browser. These controls worked fine in both callback and postback. To load dynamically from an ASCX file.
'ascx1.ascx contain some callback-able controls
Private Function LoadAscx_DuringCallback(Optional ByVal RenderMe As Boolean = False) As String
Dim rt As String = ""
div1.Controls.Clear()
Dim c As Control = LoadControl("~/Test2/ASCX/ascx1.ascx")
c.ID = "ascx1"
div1.Controls.Add(c)
If RenderMe Then rt = CallbackManager1.RenderControlHelper(c)
Return rt
End Function
Or to load dynamically as a control
'c is a callback-able TextBox
Private Function LoadControl_DuringCallback(Optional ByVal RenderMe As Boolean = False) As String
Dim rt As String = ""
div1.Controls.Clear()
Dim c As New ACT360_CallbackControls.ZYH.TextBox
AddHandler c.KeyUp, AddressOf TextBox_KeyUp
AddHandler c.GetFocus, AddressOf TextBox_GetGocus
div1.Controls.Add(c)
If RenderMe Then rt = CallbackManager1.RenderControlHelper(c)
Return rt
End Function
View 2 Replies
Feb 20, 2010
Ive set up a basic client side callback to a WCF service. see sample code below.
when viewing using an http filter attached to the explorer you can see that:
1. service1.svc/js is working fine and return proper java script to the browser
2. serrvice1.svc works and returns a proper json data.
3. call is fine and using alert instead of updating the div info i get the data.
but then after OK on the alert the page is then reloaded from scratch.
[Code].....
View 2 Replies
Sep 25, 2010
I have a following issue (it's only happening in Internet Explorer).
I add callback to a page in the old-fashioned way -> Page.ClientScript.RegisterClientScriptBlock(...)
The scenario is: 1) The default page is being loaded. On Page_OnLoad it assigns a NULL to some session key. Let's call it Control -> Session["Control"] = null;
2) User presses a button and gets redirected to a next page (let's call it NextPage.aspx) using javascript event -> window.location.assign(....) (also tried .href = ... - no help)
3) The NextPage.aspx assigns some value to Session["Control"] on Page_OnLoad
5) User clicks a button on the NextPage.aspx and a callback request is being sent to a server....
TA DA!!! The interesting part:
6) Along with the request to the NextPage.aspx another request is being sent to the default page.
7) The only response is being recieved by a client is a response from the NextPage.aspx BUT since the code on the default page is being executed it puts null to the Session["Control"] which screws all my following scenario. the default page doesn't recognize the request as a callback? so if(IsCallback) {} doesn't help....
I believe it's not a code issue since as I wrote above it works in development environment,but I have no clue what can 'cause it to fail in production and only in IE...
At least what to start to look at... and I have Helicon's ISAPI Rewrite installed on the production server. It doesn't seem to be the cause but who knows....
Correction
if I do not assign window.location and just add a link to the NextPage.aspx and click it manualy after callback ended it still sends extra request to the default page. if I click the link before I initialize callback it works fine without extra request.
View 1 Replies
Oct 6, 2010
To me this should be much easier, but I can't seem to retain the values that are put in the Insert template upon a validation failure or when the sql fails. This will prevent the user from having to retype everything agin in the event of a failure.
As you can see I am using the Sub Insert_Click and not using an insert through the wizard. so the fields are unbound textboxes on the form. There are 2 dropdowns that provide choices for the other fields.
I pasted in the code using the text only option becuase the format was getting messed up. I probably need more background on why the fields are blanking out.
[code]....
View 8 Replies
Nov 22, 2010
I have a page that is using the Ajax asynch file uploader. What I would like to have happen is after the file is uploaded I would like to have it displayed in a list on the page. I am looking for a way to fire a callback event when the file upload is complete. Is it possible using the asynch fileupload control?
View 1 Replies
May 3, 2010
But I have another problem, my gridview is inside UpdatePanel and when I click on prev or next button I get exception: "Sys.WebForms.PageRequestManagerServerErrorException: Invalid postback or callback argument. Event validation is enabled using <pages
enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation."
Do you know what should I do to make it work?I don't think that I should change enableEventValidation to "false" maybe I should use ClientScriptManager.RegisterForEventValidation? But I don't know how to use it.
View 1 Replies
Feb 25, 2011
I have a simple script making a request to the server:
var DTO = { 'path': path };
var url = 'default.aspx/Get';
var test;
$('#getInstance').click(function () {
$.ajax({
url: url,
type: 'POST',
dataType: 'json',
data: JSON.stringify(DTO),
contentType: 'application/json; charset=utf-8',
success: function (msg) {
test = msg;
},
error: function (jqXHR, textStatus, errorThrown) {
alert(textStatus);
alert(errorThrown);
}
});
});
This works fine as in it connects to the server and gets the data back, with one simple problem. It is treating this request as a cross domain request, therefore using jsonp. The server code is here:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static MyObject Get(string path)
{
MyObject foo = new MyObject();
return foo;
}
Normally this would not be a problem, except that I am accessing a WebMethod, and it doesnt have the capability to return a jsonp response (meaning it has no way to attach the callback function to the response. Now, if this was a manual response, I could hack it up and attach the parameter, but I am taking advantage of the built-in serialization, so no way to mess around with the response. [URL]
Let me just stress the fact that this code works. The only problem is jQuery treating this request as cross domain. But Why? UPDATE: Well, after many more hours and more testing I have narrowed this issue down to it being a bug in jquery 1.5.1. I did some testing with older versions (all 1.4 versions) and I had no problem, the request was made using JSON, and the response was received successfully. What could be the change they made that would consider this request a CORS?
View 2 Replies
Mar 8, 2011
public class JsonBuilder
{
private StringBuilder json;
public JsonBuilder()
{
json = new StringBuilder();
}
public JsonBuilder AddObjectType(string className)
{
json.Append(""" + className + "": {");
return this;
}
public JsonBuilder Add(string key, string val)
{
json.AppendFormat(""{0}":"{1}",", key, val);
return this;
}
public JsonBuilder Add(string key, int val)
{
json.AppendFormat(""{0}":{1},", key, val);
return this;
}
public string Serialize()
{
return json.ToString().TrimEnd(new char[] { ',' }) + "}";
}
}
Here is the Web Method [WebMethod]
public static string GetPersonInfo(string pFirstName, string pLastName)
{
var json = new JsonBuilder().AddObjectType("Person");
json.Add("FirstName", "Psuedo" + pFirstName).Add("LastName", "Tally-" + pLastName);
json.Add("Address", "5035 Macleay Rd SE").Add("City", "Salem");
json.Add("State", "Oregon").Add("ZipCode", "97317").Add("Age", 99);
return json.Serialize();
}................
View 1 Replies
Oct 12, 2010
i use cascading dropdown lists (in a user registration form) and when the user hits the submit button i get the error: "Invalid postback or callback argument" I've seen on the net that this is a problem dating back many years but still haven't found a solution to this. I've read about changing EnableEventValidation to false, but this poses a security risk.
View 2 Replies
Dec 1, 2010
i have used ajax control toolkit masked editor extender.i want to remove "_" from masking pattern and want to replace it with space. for ex. want " - - " instead of this
<
asp:MaskedEditExtender
ID="MEETxbPhone"
TargetControlID="txbPhone"
Mask="999-999-9999"
[code]...
View 2 Replies
Dec 9, 2010
For some reason when I use the AsyncFileUpload it fails on the first attempt. All upload attemps that follow are always succssesful unless I close the browser and start again.
View 7 Replies
Feb 24, 2010
I tried this in many scenarios and everytime the ViewState is disabled page-wide, NoBot raises an internal NullReferenceException and always returns InvalidBadSession. I suspect that you are referencing the ViewState and it returns a null value which is then used. It's probably a good idea to think about a way that avoids using ViewState.
View 1 Replies
Sep 21, 2010
I have installed VWD2010
created a new website (Build Target 3.5)
I then made a reference to the AjaxControlToolkit.dll where it created a new Bin folder and added a whole load of folders below plus the dll file apprears.I've also installed the AJAX tool bar where all the Ajax controls are available.
Then on a new page I added the Editor control which rendered the page as the following
[Code]....
[Code]....
[Code]....
View 1 Replies