2012-05-09 7 views
0

最後のカンマを削除する方法 '、' jqueryで削除する。以下は、スライドショーの画像の背景のための私のコードのjqueryのは、PHPのコードは、ユーザーが管理者に画像を変更することができますJavaScriptでのループ画像のURLを意味します:uは私がループ画像のURLのためにいくつかのPHPコードを入れて表示された場合最後のカンマを削除する方法 '、' jqueryで

   navigation    : 1,  //Slideshow controls on/off 
       thumbnail_navigation : 1,  //Thumbnail navigation 
       slide_counter   : 1,  //Display slide numbers 
       slide_captions   : 1,  //Slide caption (Pull from "title" in slides array) 
       slides     : [  //Slideshow Images 
               <?php // this will looping image background custom - xx_rusly_xx 
                $images = getFieldOrder('background_slideshow_image'); 
                 foreach($images as $image){ 
                  echo "{image : '"; 
                  echo get('background_slideshow_image',1,$image); 
                  echo "'},"; 
                 } 
               ?> 
              ]       
      }); 
     }); 

    </script> 

<?php // this will looping image background custom - xx_rusly_xx 
$images = getFieldOrder('background_slideshow_image'); 
    foreach($images as $image){ 
     echo "{image : '"; 
     echo get('background_slideshow_image',1,$image); 
     echo "'},"; 
    } 
?> 

とブラウザがこのようなPHPとJavaScriptを生成します。

//Components 
     navigation    : 1,  //Slideshow controls on/off 
     thumbnail_navigation : 1,  //Thumbnail navigation 
     slide_counter   : 1,  //Display slide numbers 
     slide_captions   : 1,  //Slide caption (Pull from "title" in slides array) 
     slides     : [  //Slideshow Images 
     {image : 'http://iconcept-project.com/dev/gd/wp-content/files_mf/1.jpg'}, 
     {image : 'http://iconcept-project.com/dev/gd/wp-content/files_mf/2.jpg'}, 
     {image : 'http://iconcept-project.com/dev/gd/wp-content/files_mf/3.jpg'}, 
     {image : 'http://iconcept-project.com/dev/gd/wp-content/files_mf/4.jpg'},                             ]       
    }); 
});   
</script> 

と問題は、インターネットエクスプローラで、これはIR以外は実行されませんので、最後の行にカンマを削除する方法です最後のカンマを消してください。ここ

{image : 'http://iconcept-project.com/dev/gd/wp-content/files_mf/4.jpg'}, 

完全なコードです - >助けをhttp://pastebin.com/c1A7ZKGr

感謝。

+0

レンダリングされたhtmlの外観は 'ソースの表示'のようなものですか? –

+0

http://iconcept-project.com/dev/gd/ – ruslyrossi

+0

(Offtopic)P.S.イメージのサイズを最適化しようとします。読み込みが長すぎる –

答えて

1

私は好奇心が強いです。なぜあなたはPHP側でそれをしないのですか?

<?php // this will looping image background custom - xx_rusly_xx 
$images = getFieldOrder('background_slideshow_image'); 
    foreach($images as $ind => $image){ 
     echo "{image : '"; 
     echo get('background_slideshow_image',1,$image); 
     echo "'}".($ind == count($images)-1 ? '' : ','); // no comma for last image 
    } 
?> 
2

問題は、あなたのjsスクリプトが、PHPスクリプトではありません。このようにしてください:

<?php // this will looping image background custom - xx_rusly_xx 
$comma = false; 
$images = getFieldOrder('background_slideshow_image'); 
    foreach($images as $image){ 
     if ($comma) echo ","; else $comma=true; 
     echo "{image : '"; 
     echo get('background_slideshow_image',1,$image); 
     echo "'}"; 
    } 
?> 
1

のjavascript:

s = s.substring(0, s.length - 1); 

や自家製の機能の代わりにjson_encodeを使用しています。

0

これはPHPで制御する必要があります。

foreach($images as $i => $image){ 
     echo $i === 0 ? "" : ","; 
     echo "{image : '"; 
     echo get('background_slideshow_image',1,$image); 
     echo "'}"; 
    } 
2

JSONはJavaScriptでリテラルとして有効なオブジェクトを評価しているので、あなたがjson_encode[docs]を使用する必要があります。

<?php  
    $images = getFieldOrder('background_slideshow_image'); 
    $out = array(); 
    foreach($images as $image){ 
     $out[] = array('image' => get('background_slideshow_image',1,$image)); 
    } 
    echo json_encode($out); 
?> 

(あなたのコードでは、周囲の[...]を削除する必要があると思います)

リテラルやコードを手作業で文字列で作成することは失敗に終わります(結局)。