-2

1 つの php 変数に文字列値を格納しています。画像のクリック時にこの値を関数に送信したいと考えています。ここにコードがあります

userfn.php

$actvitycode = "AG001";
<img src="phpimages/addicon.gif" onclick="showData('.$actvitycode.')"></img>



getdata.js

function showData(actcode)
{
  alert(actcode);
  document.getElementById("tasklist").value = actcode;
}

問題は、画像をクリックしても関数が呼び出されないことです。参考までに: $actvitycode に整数値 (例: 2342) を格納すると、関数が正常に呼び出され、アラートに結果が表示されます。文字列値のみの問題。次のようないくつかの構文で試しました

onclick="showData("'.$actvitycode.'")"
onclick="showData($actvitycode)"

しかし、どの構文でも結果が得られません。正しい構文を教えてください。

4

4 に答える 4

1
<?php 
$actvitycode = "AG001";
// close php tag ?>
<img src="phpimages/addicon.gif" onclick="showData('<?php echo $actvitycode ?>')"></img>
于 2012-09-14T18:37:21.877 に答える
1

echo次のコマンドを使用する必要があります。

<?php $actvitycode = "AG001"; ?>
<img src="phpimages/addicon.gif" onclick="showData('<?php echo $actvitycode; ?>')"></img>
于 2012-09-14T18:37:01.257 に答える
1

phpで変数を使用しようとしていますjavascriptjavascriptクライアント側(つまり、クライアントブラウザで実行)およびphpサーバー側(=サーバーで実行)のように、これは不可能です。

<img src="phpimages/addicon.gif" onclick="showData('<?php echo $actvitycode ?>')"></img>

この場合は機能するはずです。

タグ内のコードは、クライアントに送信される前にサーバー上で実行されることに注意してください<?php ?>(たとえば、apache表示 ( html または css の場合) または実行 (スクリプトの場合 - たとえば javascript )。

コードは実際に javascript コードを生成します - もし$activity = 'foo'、コードが showData 関数呼び出しのパラメータに定数を生成します:

<img src="phpimages/addicon.gif" onclick="showData('foo')"></img>
于 2012-09-14T18:43:54.553 に答える
0

このようにしてください:

PHP ファイル:

<? $actvitycode = "AG001";?>
<img src="http://www.kafkabrigade.org.uk/wp-content/uploads/2011/07/button-pic.jpg" onclick="showData('<?=$actvitycode?>')"></img>

<? $actvitycode = "AG002";?>
<img src="http://www.kafkabrigade.org.uk/wp-content/uploads/2011/07/button-pic.jpg" onclick="showData('<?=$actvitycode?>')"></img>

<input type="input" id="tasklist" value="">

JS ファイル:

<script type="text/javascript" charset="utf-8">
    function showData(actcode) {
        alert(actcode);
        document.getElementById("tasklist").value = actcode;
    }
</script>

ですから ')"> に $actvitycode を挿入するか、 as または as にする必要があります。実際には同じです。

質問があれば書いて...

于 2012-09-14T18:51:39.343 に答える