php - Ajax call failing; xhr.responseXML is undefined -
i'm trying make simple ajax call:
when user selects , option, info option echoed div (this dynamic)
here's code ajax call
ajax.js
$(document).ready(function() { //add event //currently broadcasting @zone $('#beacon0').on('change', function () { var selected = $(this).find("option:selected"); var selectedtext = selected.text(); var selectedencoded = encodeuricomponent(selectedtext); $.ajax ({ url: 'ajax-addevent.php', data: 'n_beacon='+ selectedencoded, datatype: 'json', success: function(returnclass) { var resultajax = jquery.parsejson(returnclass) console.log(resultajax); }, error: function(xhr, status, error) { var errors = json.parse(xhr.responsetext); console.log("failed"); console.log (errors); } }); }); });
so ajax call should give name of zone in url, can $_get parameter in php script. php run test ajax call.
ajax-addevent.php
<?php include("classes/event.class.php"); $event = new event(); $getzonename = $_get['n_beacon']; $zonename = urldecode($getzonename); $arraydetails = $event->getbeaconevent($zonename); while($row = mysqli_fetch_array($arraydetails)) { $eventtitle = $row["n_title"]; $eventlink = $row["n_link"]; $eventdate = $row["n_date"]; } $arr = array( "eventtitle" => $eventtitle, "eventlink" => $eventlink, "eventdate" => $eventdate ); header("content-type:application/json"); $json_arr = json_encode($arr); return $json_arr; ?>
my problem ajax call fails , gives me result:
what's wrong why ajax call? can help?
edit update code:
you're trying xml response when returned datatype json - xhr.responsexml undefined unless response valid xml.
try using xhr.responsetext instead. can use json.parse(xhr.responsetext) javascript object out of it.
another technique use dev tools of current browser inspect network response directly (f12 in firefox or chrome, open network tab).
Comments
Post a Comment