2016-11-07 20 views
4

私のJavaスクリプト。私はイメージを表示したい。 javascriptにはイメージのパスが配列形式である必要があります。パススルーajaxを供給しようとしました。動いていない。私はハードコードを使用しているときに働いています。私のjavascipt以下。動いていない。 JavaScriptコードと私のPHPファイルコードの下に作業コードの供給もあります。php(json_encodeを使用)からjavascriptに配列を渡す方法

$(function() { 
    $.get("php/building_edit_image_get_db.php", function(your_return_data) { 
    alert(your_return_data); 

     $("#editimagefile").fileinput({ 
      showUpload: false, 
      showCaption: false, 
      overwriteInitial: true, 
      initialPreview: [your_return_data], 
      initialPreviewAsData: true, // identify if you are sending preview data only and not the raw markup 
      initialPreviewFileType: 'image', // image is the default and can be overridden in config below 
      browseClass: "btn btn-primary btn-lg", 
      allowedFileExtensions : ['jpg', 'png','gif'] 
     }); 
    }); 
}); 

これは機能しません。私がハードコードを置くと、スクリプトは正しく実行されます。

$(function() { 
    $.get("php/building_edit_image_get_db.php", function(your_return_data) { 
    alert(your_return_data); 

     $("#editimagefile").fileinput({ 
      showUpload: false, 
      showCaption: false, 
      overwriteInitial: true, 
      initialPreview: [ 
       "http://lorempixel.com/800/460/people/1", 
       "http://lorempixel.com/800/460/people/2" 
      ], 
      initialPreviewAsData: true, // identify if you are sending preview data only and not the raw markup 
      initialPreviewFileType: 'image', // image is the default and can be overridden in config below 
      browseClass: "btn btn-primary btn-lg", 
      allowedFileExtensions : ['jpg', 'png','gif'] 
     }); 
    }); 
}); 

私のPHPファイルは、配列値を保持するためのものです。

session_start(); 
require_once ('../aiboc_admin/class/Buidling_Image.php'); 

$editid = $_SESSION['BUILD_LIST_EDIT_ID']; 

$getimgs = Buidling_Image::GetGalleryImageByID($editid); 

    foreach ($getimgs as $setimgs) 
    { 
     $imgs[] = $setimgs['img_url']; 
    } 
echo json_encode($imgs,JSON_UNESCAPED_SLASHES); 

答えて

2

あなたがjson_encodeを使用するときは、JSON形式を取得しているので、あなたは$.parseJSON()を使用する必要があります。

$.get("php/building_edit_image_get_db.php", function(your_return_data) { 

    $("#editimagefile").fileinput({ 
     showUpload: false, 
     showCaption: false, 
     overwriteInitial: true, 

     initialPreview: $.parseJSON(your_return_data), 

     initialPreviewAsData: true, // identify if you are sending preview data only and not the raw markup 
     initialPreviewFileType: 'image', // image is the default and can be overridden in config below 
     browseClass: "btn btn-primary btn-lg", 
     allowedFileExtensions : ['jpg', 'png','gif'] 
    }); 

}); 

それとも、あなたがそれを解析する必要はありません、代わりに$.get()要求の$.getJSON()を使用することができます。

$.getJSON("php/building_edit_image_get_db.php", function(your_return_data) { 

これが役に立ちます。

関連する問題