2016-05-09 51 views
0

我尝试用jQuery调用一个带有GET参数的函数。这个函数返回一个JSON结果。我怎样才能从jQuery.getJSON带回传参数回调

这是我的代码:

$(document).ready(function() { 
    function getUrlVars() { 
     var vars = [], hash; 
     var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); 
     for (var i = 0; i < hashes.length; i++) { 
      hash = hashes[i].split('='); 
      vars.push(hash[0]); 
      vars[hash[0]] = hash[1]; 
     } 
     return vars; 
    } 

    var nom_restaurant = decodeURI(getUrlVars()["nom_restaurant"]); 
     //alert(nom_restaurant); 
     $.ajax({ 
      type: 'GET', 
      url: 'http://192.168.1.15/fou/affiche.php', 
      data:nom_restaurant , 

      success: function (data) { 
       //Do stuff with the JSON data 
       $.getJSON(url,data,function(result){ 
        console.log(result); 
        $.each(result, function(i, field){ 

        var codeBarre=field.codeBarre; 
        var designation=field.designation; 
        var dateDebut=field.dateDebut; 
        var dateFin=field.dateFin; 
        var prix=field.prix; 
        var TVA=field.TVA; 
        var photo=field.photo; 

        $("#promo").append(" "+"<a href='form.html?codeBarre="+codeBarre+"&designation="+designation+"&dateDebut="+dateDebut+"&dateFin="+dateFin+"&prix="+prix+"&TVA="+TVA+"&photo="+photo+"'><h2>"+designation+"</h2>"+" "+dateDebut+" "+dateFin+" "+'<img src="http://192.168.1.15/fou/phonegapserver/phonegapserver/uploads/'+photo+'" width=50px height=50px />'+"<br/></a>"); 
       }); 
       }); 
      } 
     }); 
    }); 

我的方法召唤:

$("#list").append("<a href='liste.html?nom_restaurant="+TABLE_NAME+"'>"+TABLE_NAME+"</a><br/>"); 

我的功能列表的表格内容。 我对PHP函数:

function AffichePromo($nom_restaurant){ 

$db1=new PDO('mysql:host=localhost;dbname=testf','root',''); 


$db1->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$sql = 'SELECT codeBarre,designation,dateDebut,dateFin,prix,TVA,photo FROM '.$nom_restaurant.''; 
     foreach($db1->query($sql)as $data) 
    { 

     $texte[]=$data; 

    } 
     return json_encode($texte); 

    } 

我用肥皂web服务工作,餐厅的名字是从获得。

+0

你可以删除线'vars.push(哈希[0]);'从 – gurvinder372

+0

我的第一个功能之后给paramater第一种方法?我删除一行。我也有同样的空白页面。 – user1674906

+0

准确地说,你面对这个问题? – gurvinder372

回答

0

这是我的解决方案:

$(document).ready(function() { 
    function getUrlVars() { 
     var vars = [], hash; 
     var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); 
     for (var i = 0; i < hashes.length; i++) { 
      hash = hashes[i].split('='); 
      vars.push(hash[0]); 
      vars[hash[0]] = hash[1]; 
     } 
     return vars; 
    } 

    var nom_restaurant = decodeURI(getUrlVars()["nom_restaurant"]); 

    $.getJSON('http://192.168.1.15/fou/affiche.php', {nom_restaurant : nom_restaurant }, function(result) { 
     $.each(result, function(i, field) { 
      var codeBarre=field.codeBarre; 
      var designation=field.designation; 
      var dateDebut=field.dateDebut; 
      var dateFin=field.dateFin; 
      var prix=field.prix; 
      var TVA=field.TVA; 
      var photo=field.photo; 

      $("#promo").append(" "+"<a href='form.html codeBarre="+codeBarre+"&designation="+designation+"&dateDebut="+dateDebut+"&dateFin="+dateFin+"&prix="+prix+"&TVA="+TVA+"&photo="+photo+"'><h2>"+designation+"</h2>"+" "+dateDebut+" "+dateFin+" "+'<img src="http://192.168.1.15/fou/phonegapserver/phonegapserver/uploads/'+photo+'" width=50px height=50px />'+"<br/></a>"); 

     }); 
    }); 

});