You save me a lot of time.
]]>1 | function Sys$Net$XMLHttpSyncExecutor$executeRequest() { |
at the end, before
1 | this._started = true; |
insert
1 2 3 4 | if (navigator.appName != "Microsoft Internet Explorer" && navigator.appName != "Opera" && navigator.appVersion.indexOf('Safari') < 0) { this._onReadyStateChange(this._xmlHttpRequest); } |
Yes I need POST parameter.
It works !!
Thank you very much
Das vidanje!
Nicola
If you want to use URL params (GET), try this:
1 2 | var urlParams = {'param1':'value'}; wRequest.set_url(Sys.Net.WebRequest._createUrl(PageMethods.get_path()+"/RunQuery", urlParams)); |
But as I understand from your code, you need POST, so
1 2 3 | var params = {'param1':'value'}; var body = Sys.Serialization.JavaScriptSerializer.serialize(params); wRequest.set_body(body); |
1 | wRequest.set_url(PageMethods.get_path() + "/RunQuery("+JSON.stringify(Param)+")"); |
or
1 | Sys.Net.WebServiceProxy.invoke('/Default.aspx', 'RunQuery', false, { Params: JSON.stringify(sSQL) }, null, OnErrorQuery); |
but they both don’t work ..
Thanks in advance for any help / idea
Bye
Nicola
А случай простой. Перед отправкой формы (на onsubmit или клиентский onclick у кнопки) нужно получить с сервера некоторый ключ someCode, который использовать для обработки данных формы (в частности захэшировать md5(fieldValue+someCode)) и продолжить выполнение стандартного кода, который генерит ASP.NET (валидации там всякие и постбек). Муторно описал в общем, но задача есть.
Решить ее же можно по-другому (через AJAX) – на onclick кнопки повесить вызов AJAX и return false;, а в колбеке вставить код, который вызовет валидацию и сделает постбек (ClientScript.GetPostBackEventReference), но решение не очень универсальное. С синхронным вызовом все проще — получил код, а дальше пусть само как обычно работает.
]]>Что за случай, интересно?
]]>