2017-05-30 28 views
0

我有一個問題,我的網頁,第一個代碼(姑且說是hompe.php)如何在ajax上獲得另一個頁面?

<html> 
<div id="trackingkp"></div> 
</html> 

然後在我的AJAX我有這樣的代碼,這些

$(document).ready(function() { 
    var dataString = ''; 
    $.ajax 
    ({ 
     type: "POST", 
     url: host+"ajax/tracking/kp", 
     dataType: 'html', 
     success: function(html) 
     { 
      $('#trackingkp').html($(html).find('#trackingkp').html()); 
      //$("#trackingkp").html($(data).find('#trackingkp').html()); 
     } 
    });  
}); 

和我的AJAX控制器我不喜歡這些(我使用框架laravel)

public function tracking($url) 
{ 
    //var_dump("AAA"); 

    $this->view('ajax/tracking/'.$url,[]); 
} 

在我的AJAX /跟蹤鑑於這樣

<?php 
    //$json = array(); 
    $json = "<input type='text'></input>"; 
    echo json_encode($json); 
?> 

當我嘗試正在顯示

Syntax error, unrecognized expression: "<input type='text'> 

我已經解決了這個問題,我使用的是另一種選擇,而無需使用jQuery的,所以在同一時間,對控制器時加載視圖home.php,我嘗試把負載視圖太喜歡這些

public function index(){ 

    is_header(); 
    $this->view('home',[]); 
    $this->view('ajax/tracking/kp',[]); ---> I add these 
    is_footer(); 
} 

和AJAX /跟蹤/ KP(視圖)我把這些代碼

<input type='text'></input> 

並正在工作。

+0

當你試過更換,會發生什麼'已''到'< input type ='text'/>''而不是你的'$ json'變量? – eeya

+0

@eeya:語法錯誤,無法識別的表達式:「」。 – Wolfzmus

+0

嗯,仔細檢查一下:'echo json_encode(「」)''。它仍然返回一個[語法]錯誤? – eeya

回答

0

的問題將是在這一個:

success: function(html) { 
    // Problem : $(html).find('#trackingkp').html(); 
    $('#trackingkp').html($(html).find('#trackingkp').html()); 
} 

從中此html響應預期在給定的[控制器]返回json

<?php 
    //$json = array(); 
    $json = "<input type='text'></input>"; 
    echo json_encode($json); 
?> 

因此,這等同於:

$("<input type='text'></input>").find('#trackingkp').html(); 

在這種情況下,我不認爲你可能需要調用另一個* .html()。您可以簡化/調用一次解決這個問題:

$.ajax({ 
    type: "POST", 
    url: host+"ajax/tracking/kp", 
    dataType: 'json', // Kindly replace [html] to [json] since you are returning a [json] value 
    success: function(html) { 
     $('#trackingkp').html(html);   
    } 
}); 

希望這有助於爲你的情況

+0

井是有點工作,但仍然顯示語法錯誤無法識別的表達式:「」或語法錯誤,無法識別的表達式:「<\/input>」 – Wolfzmus

+0

你有什麼反應時你有控制檯[html]? 'console.log(html)' – eeya

+0

語法錯誤無法識別的表達式:「」或語法錯誤,無法識別的表達式:「<\/input>」仍然相同,但nvr介意,我找出與naother選項,你可以看到我的更新問題,tq爲您的答案:) – Wolfzmus

相關問題