2016-05-09 53 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>"); 

     }); 
    }); 

});