Jquery Ajax Call To Web Service - Canīt Pass Parameters?
Nov 6, 2010
Iīm using jQuery to make the ajax calls to web services. Iīm not using json, I want the information in XML. If I donīt pass parameters and I make the WS parameter less it works but if I want to pass a value as parameter (I tried int and string) it doesnīt work. Here is my code:
jQuery: [Code]....
The web service
[Code]....
The error that I get from firebug is an exception System.InvalidOperationException and it says that the parameter region_id is missing.It canīt be very difficult because it works without parameters but all the information I find in internet
I put a break point inside MyWebMethod. When I invoke this call on the page, the break point never gets hit. It works fine when I remove all parameters from MyWebMethod's signature and pass in '{}' from JS as parameters. Once I try to pass in a string parameter, it stops working.
I have the following jQuery event that gets fired every time an anchor is clicked. How can I pass a asp.net control (lets say a panel called "pnl_info") as one of the parameters, in addition to the "target" parameter i'm already passing?
[ServiceContract(Namespace = "")] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] public class Aja { [WebGet] [OperationContract] public string Hi() { return "hi world!"; } }
and I'm trying to do this: $.get('Aja.svc?method=Hi', function(d) { alert(d.d); }); In firebug I see that the result is HTTP Error 404.17 - Not Found The requested content appears to be script and will not be served by the static file handler. I use .net 3.5, jquery 1.4.4
I created a number of standard WCF Services (Service Contract and Host (svc) are in separate assemblies). I fired up a Web Site in IIS to host the Services (i.e., address is [URL]). Then in my Web Site project I added the reference. I am able to call the services normally. I am needed to call some of the services client side. Not sure if I should be looking at articles calling WCF services through AJAX, JQuery, or JSON enabled WCF Services. Some of the changes I made was adding the following to the Operation Contract:
I am attempting to call the service like this in javascript: wcfservices.SetFoo(string Id); Nothing is working. If it is idea or a better solution to call JSON enable, JQuery, etc.... I am willing to make any changes.
I am trying to call web service from jquery..trying following way but i am not able to pass to complex type parameter to WCF service.My wcf function is as follows
<OperationContract()> <Web.WebGet(UriTemplate:="/GetData?strErrMsg={strErrMsg}&chrErrFlg={chrErrFlg}", ResponseFormat:=WebMessageFormat.Json, BodyStyle:=WebMessageBodyStyle.Wrapped)> _ Function GetData(ByRef strErrMsg As System.Collections.Generic.List(Of String), ByRef chrErrFlg As String) As String strErrMsg is System.Collections.Generic.List(Of String)
I am trying to call as follows
var Type; var Url; var Data; var ContentType; var DataType; var ProcessData; var parameters;
[code]...
And I am able to call other methods in same way having string and integer parameter.I have gone through this but didnt get anything. URL...
As it is now I create a JavaScript object and then stringify it, put it in a hidden textbox and my code behind can read this string. I then use JSON.NET to parse the string which works fine. I now try to use ajax to post it to my web service but have some issues with how to send the string. I have tried many ways but gets the common errors like
Invalid JSON primitive: myString.
So I checked this out [URL] and it works with hard coded values but I want to use a variable.
JavaScsript to create the object:
for (var i = 0; i < results.rows.length; i++) { var row = results.rows.item(i); var customer = new Object(); customer.id = row['id'] customer.name = row['name'] var customerString = JSON.stringify(customer); $.ajax({ type: "POST", url: "synchronise.asmx/synchroniseCustomers", data: "synchroniseCustomers: " + customerString, contentType: "application/json; charset=utf-8", dataType: "json", error: function (xhr, status) { alert("An error occurred: " + status); }, success: function (msg) { alert("success"); } }); }
WebMethod:
public void synchroniseCustomers(string customerString) { JObject o = JObject.Parse(customerString); string id = (string)o["id"]; string name = (string)o["name"];
If I use data: '{ FirstName: "Dave", LastName: "Ward" }'
in the example above it works but I wish to pass on a string instead.
When I was reading the blog Using jQuery to Consume ASP.NET JSON Web Services
I have seen this argument:
"By using jQuery to call the web service directly, we've eliminated over 100 KB of JavaScript and three extra HTTP requests. "
Why does the ASP.NET AJAX call to a .NET Web-Service needs 3 extra HTTP requests? What are those requests? (I wonder how jQuery manages the call with lesser HTTP requests in this case).
I am a newbie to ASP.NET (but not to C#)I have a project I am developing that may seem unconventional at this point but it is a project that I hope to eventually expand and provide a new type of service on the internet. Currently the project makes use of an Excel spreadsheet that is generated by another application I wrote. Basically the spreadsheet is an index to a specific type of file that exists on a host computer and the files are directly linked from within the excel document. When the link is clicked it opens the file using the operating system default program which then processes the file (this takes some time).
This is fine and dandy but when I click on another file, the default program immediately stops processing one file and opens the latest submission and thus interrupting the previous job. To prevent this I am now writing a queuing application. Here is where ASP.NET comes in. I do not want the link to open the queuing application with the file to add into the queue as a parameter because that pops one or more nnoying/scary "you are opening an executable" dialogs and because I want to be able to access the queuing service from a remote computer, and possibily in the future over the web. Instead I am trying to use an ASP.NET service application that will accept the name of a file as a parameter, access the external queue class (defined in an external dll of which only one universal instance is allowed), and add the request to the queue. Whether or not the table is an excel table or on a web page, using a form in this instance is tedious, not only for me but for a user. I want the user to be able to simply click on an html link and have the file be queued without anything except maybe a confirmation page pop up saying that the file has been queued and it will take x amount of time before the file is finished processing.
My problem is I cannot for the life of me find a way to do this. I have searched the interenet for over a week now looking for a way to call a "WebMethod" using a link and I am getting the impression that it cannot be done. Even when I use a form and try to have the form pass a string (representing the file name) as its "action" it comes up with an application error saying that I am missing the parameter I am trying to pass. Here are some examples of what I have tried:Here an example method I would try to access:
[Code]....
Here is an example of how I tried to access directly by way of a link (which results in an application error: InvalidOperationException)"
how can i use jquery in a scenario where when i click an image, jquery picks up the values of 2 dropdown lists and passes them up as parameters to a remote POST URL?
The page is then redirected to this new URL with the appropriate parameters.
I have a webpart in a page in which there is a gridview(which shows list of customers). When I click on a link button in gridview, I would like to popup a JQuery modal window and fill the popup(this contains textboxes, then a gridview which contains mapped systems for thet customer, and another gridview which contains list of configured reports for that customer) with the details based on the customer name(link) clicked. Here I need to pass the customer Id and customer name parameters based on which I can fill the Jquery modal window.
pass parameters to JQuery modal window in order to fill the contents inside it?
Cannot find a simple example that will call POST a service with username pass argument.
So, how to get the length of the service.
Code: Dim encoder As ASCIIEncoding = New ASCIIEncoding Dim data() As Byte = encoder.GetBytes(rawresp) Dim request1 As HttpWebRequest = CType(WebRequest.Create("http://www.sas.gr/MobileService/MobileService.asmx?wsdl&op=getCinemaMoviesProgram"), HttpWebRequest) request1.Method = "POST"
[Code] ...
Complains about wrong bytes. I can make it work with GET but i only get the schema.
Code: Dim request = DirectCast(WebRequest.Create("http://www.sas.gr/MobileService/MobileService.asmx?wsdl&op=getCinemaMoviesProgram"), HttpWebRequest) request.Method = "Get" ' request.ContentLength = 0 request.Credentials = New System.Net.NetworkCredential("WSl", "WSs") Dim response1 = DirectCast(request.GetResponse, HttpWebResponse) Dim reader = New StreamReader(response1.GetResponseStream()) Dim rawresp As String rawresp = reader.ReadToEnd()
This will only give the schema back, no data. Also if i reference the service there is no getCinemaMoviesProgram function to call, so I suppose it only works with post.
this is regarding a tutorial posted here at [URL] , as such this example is working fine, but what if i have a textbox in the page and i want to call the value in the web handler, how can i achieve that?
I have the following scenario. An user uses the desktop application to call our WCF Service which has windows authentication. The WCF Service calls the Office Communication Server (OCS) in order to do some custom work.
When the WCF Service calls OCS we have to pass an instance of NetWorkCredential into the call. I want to pass in the original calling users NetworkCredential object into the OCS call rather than constructing it using a custom username and password. How do I get access to the calling users NetworkCredential object from the WCF service and pass it to the OCS call?
I have created an WCF data service in a new asp.net web application and i want to call this web service from another web application using jquery, but it always returns null.
My jquery call looks like this:
[code]....
Note that [URL] works in the browser but since the jquery call is from localhost:3410 i assume its a problem with cross domain.
I have been reading that i should use jsonp for this, but i have a hard time figuring it out.
I'm trying to call a web service and the passed string may have punctuation, depending on what the user types in.I currently have an HTML textbox and a jQuery call to the .NET web service. I definitely think the string with punctuation fails because jQuery will send the string wrong, so I tried a few different javascript encoding functions I could find. I was never able to encode it successfully and decode it in .NET, saving the string with punctuation.
Basically I have a textbox that a user can update their status in. If the user wants to use punctuation, I'd like them to be able to. How can I accomplish this with jQuery and .NET?
I have Master Details JQGrid.My details JQGrid have Edit,Add,Del options. my problem is when I click on submit button to add data or edit data I faced with this error: "500 Internal Server Error" and it's response is
I'm fairly new to ASP.Net MVC 2 and understand the MVC pattern in itself. But my question is what's the best way to populate dropdownlists in the UI sticking to the MVC pattern. Should I be going through the controller? Every article I've seen to do this shows how to do it using javascript and jquery. I have a test application that I'm re-writing in MVC2 I have my dropdowns working with jquery basically calling a WCF Data Service that returns JSON which populates the dropdowns. Seems to me though that this is bypassing the controller and going straight to the model therefore strictly violating the MVC pattern. Or am I missing something obvious here. You thoughts or best practices would be greatly welcome here.
i want to update my page from database every 20 Sec..so for that i want to pass multiple data fields from server to Client using AJAX.. what can i use for that except using xml?