0

自動生成されたリストから選択するときにイメージ ID を変更するためのソリューションこのコード: <?php foreach(glob('pano/*.png') as $filename):?> <li><a href="javascript:chgpano()"><?php $path_parts = pathinfo ($filename); echo $path_parts['filename'], "\n";?></a> </li> <?php endforeach; unset( $filename);?>

各ファイルのボタンを含む画面を生成します。関数 chgpano:

function chgpano()
{
ima = document.getElementById("tonto");
init();
}

変数「ima」に割り当てられた画像 ID を変更します。「tonto」の内容は、選択した画像を反映する必要があります。

以下は機能しませんが、意図を示しています。

  function chgpano()
{
    img id="tonto" src= ('pano/'+ variable with text from button selected)
ima = document.getElementById("tonto");
init();
}

同様の質問を見ましたが、不明確であるとして却下されました

4

3 に答える 3

0

これを試して:

// PHP can look like
$liA = '';
foreach(glob('pano/*.png') as $f){
  $path_parts = pathinfo($f);
  $liA .= "<li><a href='javascript:chgpano($f)'>{$path_parts['filename']}></a></li>";
}
echo $liA;

// JavaScript can look like + some goodies
var doc = document; // get in the habit of declaring variables
function E(e){
  return doc.getElementById(e);
}
var tonto = E('tonto');
function chgpano(f){
  tonto.src = f;
}

外部 JavaScript を使用<script>して、本文の下部にタグを配置します。または、<script>タグを に配置し<head>て実行しますonload

于 2013-11-08T00:51:15.343 に答える
0

Guys & Gals に感謝します。これで修正されました:

<?php
            foreach(glob('pano/*.png') as $filename):$path_parts = pathinfo ($filename); $id_front = $path_parts['filename'];?>
                <li> <a onclick = "javascript:chgpano('<?php echo $id_front ?>')"><?php  echo $id_front, "\n";?></a><img id= <?php echo $id_front ?> src= <?php echo$filename ?> style="display:none"></li>
             <?php endforeach; unset( $filename);?>

ご覧のとおり、画像 ID を関数パラメーターに割り当てるために使用されているものと同じ変数を入れています。

変数imaに img id が含まれるようになりました

function chgpano(blah)
{
ima = document.getElementById(blah);
init();
}

変数定義を外側に移動する必要がありました

  • div そうしないと、変数が定義される前に関数パラメーターが満たされていました。

  • 于 2013-11-09T21:42:34.513 に答える