Passing A JSON Object To A Function On Server Side?
Jun 4, 2010
I'm trying to create a JSON object on client-side and pass to a server-side function. Then instantiate it on server-side using JSON string representation.
I Getting A Problem In DataGrid's ItemDataBound Event. I Am Calling A JavaScript Function In DataGrid's ItemDataBound Which Retrun The CellIndex And RowIndex Number On Which UserClick After That I Am Re-Binding The DataGrid With jQuery Function After That ItemDataBound Event Not Working. I Want To Call The Same Function Again. Is Their Any Method To Call A Server-Side Function On ItemDataBound Event Except Client-Side Function..
I have the following to get the Json abject passed from the controller and populate the various textboxes in the view. However, nothing is happening even though controller is passing a valid Json object. What is wrong with this code?
<script language="javascript" type="text/javascript"> $(document).ready(function() { var url = '<%=Url.Action("DropDownChange") %>'; $("#vendorID").change(function() { var selectedID = $(this).val(); if (selectedID != "New Vendor Id") { //$.post('Url.Action("DropDownChange","Refunds")', function(result) { $.post(url, { dropdownValue: selectedID }, function(result) { alert(selectedID); $("#name").val(result.Name); $("#city").val(result.City); $("#contact").val(result.Contact); $("#address2").val(result.Address2); $("#address1").val(result.Address1); $("#state").val(result.State); $("#zip").val(result.Zip); }); } }); }); This is the code in my controller; public JsonResult DropDownChange(string dropdownValue) // This action method gets called via an ajax request { if (dropdownValue != null && Request.IsAjaxRequest() == true) { paymentApplicationRefund = cPaymentRepository.PayableEntity(dropdownValue); paymentApplicationRefund.Address1.Trim(); paymentApplicationRefund.Address2.Trim(); paymentApplicationRefund.Name.Trim(); paymentApplicationRefund.City.Trim(); paymentApplicationRefund.Contact.Trim(); paymentApplicationRefund.State.Trim(); paymentApplicationRefund.Zip.Trim(); return Json(paymentApplicationRefund,"application/json"); } else { return null; } }
I am trying to send json data from view to controller action. But the issue is the data is not populating in the action parameter List<Score>.
View Model: public class Score { public int QuestionId { get; set; } public int PrevAnswerId { get; set; } public int CurrAnswerId { get; set; } public string CurrAnswerName { get; set; } }
Json Data look like: [ {QuestionId:1, PrevAnswerId:3, CurrAnswerId:3, CurrAnswerName:'Known to Broker'}, {QuestionId:2, PrevAnswerId:7, CurrAnswerId:7, CurrAnswerName:'Completed'}, {QuestionId:3, PrevAnswerId:10, CurrAnswerId:10, CurrAnswerName:'Report'} ]
On window load, I will construct the Json object using "eval()" function and do some operation in the data before its save. On Save Click, I will call the action through the ajax call.
Action: public ActionResult SaveScore(List<Score> score) { // do something... }
But here score comming as collection of 3 elements with zero(for interger property)/null(for string property) values. When I checked in the request I found the data in "parama" property like.
But I am not sure why it is not getting populated in the score list. One full day I spent for this issue but till now I didnt find the solution for this issue.
I have a json object collection of geo locations that I build in the server. Each of those objects has two properties: "marker" and "onClick". Marker is for storing a Google Maps marker object and the onClick stores the name of the function to be called when that marker is clicked on the map.When I'm pushing the location objects into an array using javascript in the client side, I create the markers and assign them to each location object within the array.
My problem is that when I bind the marker with the onClick property, the function won't be found in the DOM and get an error.Is there a way to declare a property in a json object for using it on an event binding?
I am using an update panel in my application. Inside the update panel i am trying to trigger a html button, which in turn should invoke a server side function after which i need to invoke a client side function.But the client side function is getting invoked first where as the server side function is not getting invoked at all.
The MyWebMethod returns an integer, and I want to set $(this).attr("id") of the jQuery object above to the returned integer. Basically, I'm trying to do the equivalent of an MVC Ajax.ActionLink...AjaxOptions {UpdateTargetID =...} However, I can't figure out how to get both a reference to $(this) as well as the returned value. For example, if I do:
I can succesfully manipulate the jQuery object, but obviously it doesn't have the return value from the MyWebMethod. Alternatively, the first code block with a method signature of onSuccessFunction(returnValue) has the correct return value from MyWebMethod, but no concept of the jQuery object I'm looking for. Am I going about this all wrong?
How would I pass an Object or Array to a function using the ICallBackEventHandler (RaisCallbackEvent)? It allows for a string argument only, if you change it to another datatype it error out. Sample Below...
How could i call a javascript function in server side. I have to call the javascript function on the click of a linkbutton which inside a repeater control.
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?
I want to do something a little bit tricky here. I want to call a server side fonction from the javascript. I know it can be done but I get some errors. This is my Javascript fonction where I want to call the server side fonction:
<asp:LinkButton CssClass="button" ID="btnApply" runat="server" OnClick="btnApply_Click()" OnClientClick="Apply1('btnApply')" > hi ihave this functin in .vb file Protected Sub btnApply_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnApply.Click end sub
I have a web page having asp.net button control and textbox. I want a confirm message box, when someone changes the content of textbox and click on button. If user click on yes then event of button should fire other wise nothing should happen. All I want is to implement AJAX call back, but it is not working with ASP.NET button control.
I was wondering if there is an easy way to submit a form or a collection of fields with jquery and json to a C# server-side script. I was thinking of a script that retrieves all data from elements with an attribute called 'form' (yes, we just add a new attribute to for example a textbox or textarea). Thus, the script searches for all form attributes with form='myform' and then submits the data as an form object. In server-side code we know how to deal with the data. Does someone has such a script? Or can I inspire someone to develop such a script? (I have the idea, not the skills) ..also, sessionstate needs to be available (cookie).
I use the JavaScriptSerializer class of ASP.net to serialize my object and return it to the client side. How can I deserialize the string using JavaScript?
I know that I can receive an javascript object from the server via ASP.NET AJAX using Json. But I am not sure how can I send an javascript object from my client-side javascript to my server-side code. And if I can, how can I extract this object in my server-side code and access its members?
Is there a way to assign/pass/copy a javascript variable to a server side variable in C#? For the sake of argument, let's say that I was able to parse some JSON for variables that I want to store and assign them on the client (ie. var = FirstName and var = 25 and var = someDateTime, etc) .
I'm instantiating an asp:Button inside a data-bound asp:GridView through template fields. Some of the buttons are supposed to call a server-side function, but for some weird reason, it doesn't. All the buttons do when you click them is fire a postback to the current page, doing nothing, effectively just reloading the page.
Below is a fragment of the code:
[Code]....
The viewBtn above should call the viewBtnClick() function on server-side. I do have that function defined, along with a proper signature (object,EventArgs). One thing that may be of note is that this code is actually inside an ASCX, which is loaded in another ASCX, finally loaded into an ASPX.