JQuery :: .Post() - Accessing The Returned Json Object?
Sep 28, 2010
The below code posts a couple of vars to a php file which sends back a json object containing (in the test case) one object called 'faves' with 2 variables (let's say called var1 and var2). I can't seem to access the variables after the ajax call. The result is always an 'undefined' error message. I've tried:
Im trying to validate a form (easy) and POST it to a third party WCF service. I am able to validate and POST data to the service, but its returned data (in table format) keeps opening in a blank page with their url in the browser address bar. Can't have that, I need to grab the returned data and .append it to a div on my page. Here is what I have that FAILS
<script type="text/javascript"> $(document).click(function() { //cancel form
Every parse example I have seen on the internet is the well formed;
jQuery.parseJSON( ' {"sid":"123455","client_id":"1","last_name":"Anderson","first_name":"Alan","institution_id":"1"} '); What is the easy way to get from this; {"posts":[{"post":
I am trying out $.ajax instead of getJSON for debugging purposes. Because getJSON did not report an error in IE (6,7 or 8) and I am trying to figure out why a jQuery plug-in is not painting my returned images to the screen in IE but is in other browsers. So I tried this. Interestingly enough, it hits the error event in IE but not firefox, safari and the rest and I don't know why (this code works great and renders my data just fine in FireFox and the rest). I know my returned json is valid:
I don't know what else to do to troubleshoot why IE is having so much trouble with the returned JSON or just executing the function(data) using either getJSON OR this. I have set the headers not the cache also in the response. IE refuses to enter my function(data) on the response.
Same result. Firefox and the rest had no issue. IE still exited the $.ajax and my error method kicked in. No rhyme or reason whatsoever and I tried the IE Dev tools... nothing. About the only thing I get is this: Line: 163 Error: System error: -1072896658.Line 163 which is simply the line: function() { alert("An error has occurred. try again."); This has got to be the most f*d up situation I've been in and I need to get this working! I just cannot understand why IE can't parse a getJSON or $.ajax response, that is impossible or else there would be a huge meltdown with jQuery.
I'm pretty new to jQuery and I'm using $.getJSON to submit some data to a PHP script which either returns 5 sets of json-formatted data or data to indicate an error condition (i.e., no data available) from the PHP database query. The callback routine handles the 5 sets of json-formatted data just fine (using $.each...) but I'm having trouble testing for either just a string with 'null' in it or a json-formatted data return of [{"error":"null"}].
My callback code for the second approach looks like this: function handle_stores(data) { if (data.error == "null") ..... But this test does not execute the following code for the 'true' condition, i.e., data.error == "null" never evaluates to 'true'.
I'm trying to assign the values from the JSON data returned when I run this code into an array that's outside the callback function. The data is multidimensional, and I have been able to use this data within the callback function. However I want to use it outside that function. i.e. the jsdata returned in the code below is to be used outside the function
Code: $.getJSON('../fxns/status.php',function(jsdata){ //do some stuff with JSON data or pass to global variable[code]..........
I can't use the value returned by $.post() method out of the scope of success function.
For instance in below example myvar alerted as empty even though var is alerted with a value. Besides, hide does not work in the scope of success function.
I have a script that uses jQuery to POST data through AJAX to a PHP script, that uses that data to create a dynamic JPG image. The PHP script returns the binary image data as output using the PHP header image/jpeg command (so far so good).
Now I want to display that image in the client, but I haven't been able to find a proper solution for this yet. After reading up a bit I understand a possible solution would be to have the PHP script encode it in base64 and return the string to the client as a data URI. However, that solution won't suffice because it is not supported by IE < 8 and still limited to 32K images in IE 8.
For the moment, I am writing the image to a tmp dir on the server and return a filename to the client. However, there must be another way to solve this more elegantly through. how I can use jQuery/JavaScript to display the returned binary image data in the browser?
When retrieving JSON data I'm able to access individual elements using the $.each() function and iterate over them. However, how would I access just one element by its location and not by name? (i.e. data(0) not data.ID).
The scenario is : I have to fire an ajax request, get the json values and populate the page using jQuery template.
I'm able to fire the ajax request and in the success function I'm getting the data also. But I'm not sure how do I proceed with the Nested JSON data that I have received. I am passing it to the .tmpl() function but nothing seems to be working.
Here is the json data that I receive :
{ "activity": { "date": [ {
[Code]....
It also gives me an error sometimes that says "c.tmpl is not a function" which is linked to the jquery.tmpl.min.js .
On a page, I have a javascript json output that is generated through PHP. So, for instance, it would look like this:
Code: var upny_iniresults = { // "q_id" : "65977", // "q_txt" : "What is your favorite genre of Music?", "q_cdata" : [
And then PHP code that generates the JSON. I loop through a question, scan for the results (survey site) and display it as json data. Works perfectly. Basically, the JSON is important because I have existing functions that work with that data (display survey results of that question/etc)Here's the question.How can I generate the same Json output, so it can be read by my other jquery functions (Created by a previous developer, I am a PHP guy) by using Jquery POST as well as a query string. The idea is something like:
Code: $.post("create_json_results_for_this_question.php", $("#firstform").serialize()); # Firstform is the name of the form that is submitted.
So, would a jquery POST allow the JSON to load in my browser (which I will activate during a click function) just as my PHP json output works or is there another way? I just want to simulate the same effect, but be able to USE the jquery querystring that I have, which is:
$("#firstform").serialize());
because this lets me return survey results of a previously submitted question.My last q. was too convoluted and I realized my dilemma is just the json output.
I'm having troubles with an existing J2EE application (which uses Dojo) and in which I'm gradually introducing jQuery. The specific issue is with the malsup Form plugin and the JSON returned from a form submission: the error callback is always called, regardless of what happens on the server side, and the error is always "parsererror". I'm using jQuery 1.4.2 and the 2.45 version of the malsup Form plugin. For example, given the following code:
$(document).ready(function() { var options = { dataType: 'json',[code]....
the server receives the submission and handles it without errors, then in the browser I always get the same alert from the processAddressEditSubmitError() function, with an "Invalid JSON" message:
So I'm currently working on a ASP.NET Webforms site and I've run in to a small problem. On my .cs file I have the following Webmethod
[WebMethod] public static string IsJobEditable(int jobid){ try{ string isEditable = "false"; JobsBLL jbl = new JobsBLL(); int jobStatusId = jbl.GetJobStatusId(jobid); //If the jobs is either waiting or being edited it is okay to edit it if(jobStatusId == Convert.ToInt32(ConstantsUtil.JobStatus.Waiting) || jobStatusId == Convert.ToInt32(ConstantsUtil.JobStatus.Edit)){ isEditable = "true"; }return isEditable; }catch (Exception ex){ throw ex; }}
This function in this case will ALWAYS return TRUE as a string. On Aspx page I have the following $(function () { $.ajax({ type: "POST", url: "Coordination.aspx/IsJobEditable", data: "{jobid:" + jobid + "}", contentType: "application/json; charset=utf-8", dataType: "text", success: function (result) { alert(result);
//This is written out in the alert {"d":"true"} I want this in a variable as a string so I can do a check on it before I do some other actions. The format is not a String so I cannot split on it to retrieve the "true" part. }, error: function (err, result) { alert(err); } });});
As you can see in the comments the value I get back in the Callback method is in to me a weird format. The type is unknown and I need this value to be able to proceed with my entire method surrounding the small portion of the Javascript. Where to access the result variable / data as a var or anything else that will let me put it into a var (as a string).
I am submitting a form using ajaxSubmit and trying to read back the status code.For a error case it is showing HTTP Status 404 in responseText but not xhr.status is undefined.If i use complete callback then xhr.status 0 So how to handle case when there is some error like 404..[code]
I am doing this project. It is a flash app that the final output will open a borwser window. The flash app will send vars in the URL, ex/invoice.html?num=1&blablabla=blabla). In the HTML doc there will be a template invoice that I need to replace some of the content (prices) with the sent GET / POST vars.
It all needs to be client side that's why I need someone's javascript help. the app needs to be able to run without internet or any server side processing. so I figured some javascript would work.
I'm writing a program that involves a network of interconnected nodes (or simply objects in my example below). It depends on being able to access properties of an object's linked objects (a bit oddly worded, sorry)...Problem is I'm not sure how to properly access those properties... see below please.
<script> //This is an example of a problem im having in my own code... //I want to access the name of the object within the links array wintin the object...
I'm a little puzzled over the possibility of accessing an array. I've declared the previd id - in the proxy.invoke call which works just fine (we have already implemented an .each loop which also works. My problem is this - after accessing the proxy.invoke function, the previd is populated correctly with push but after the call, we cannot seem to access the previd array to make a join to a string. Here's the basics of the code.
var previd = []; proxy.invoke("validdateIDCard", p_caregiverid, function(validaterID) { var valcard = validateID; previd.push(valcard); }, onPageError); var finalvalue = previd.join("|"); <-- this is where the problem lies - cannot seem to read the variable...