0

PHP変数をドキュメントに渡してJS、の一部として表示しようとしていStringます。私のコードは次のようになります:

PHP ドキュメント:

<?php

    $id = "57.pdf";
?>

<script type="text/javascript">
 var id = <?php echo json_encode($id); ?>;
 </script>
<script type="text/javascript" src="../pdfjs/web/viewer.js"></script>

js ドキュメント:

var DEFAULT_URL = '../../html/docs/' + id;

ただし、渡された id 変数は、変数内の文字列の一部として表示されませんDEFAULT_URL。とにかく、渡された変数を警告しようとすると、正常に表示されます。

4

2 に答える 2

1

試してみてください:

var DEFAULT_URL = '../../html/docs/' + window.id;

編集:これでうまくいくはずです( My をあなたに固有の名前に置き換える必要があります)。

<?php
    $id = "57.pdf";
?>

<script type="text/javascript">
 var My = {
    app: {
        id: <?php echo json_encode($id); ?>
    }
 };
 </script>
<script type="text/javascript" src="../pdfjs/web/viewer.js"></script>

と:

var DEFAULT_URL = '../../html/docs/' + My.app.id;
于 2013-06-01T14:38:11.063 に答える
1

この質問の答えはありません json_encode。実際、json_encode変数を JS に安全に渡すことができます。これは有益です。

この PHPfiddleを検討してください。これはまさに OP のコードです。alert大丈夫です。

この場合、私が賭けているのは、次のような構造です。

var id = "57.pdf";
(function() {
  ...
  var id;
  alert(id);
})();

Inidは IETF で local として再宣言されておりid、その結果、外部にはアクセスできなくなりました。そこから、alertは空になります。ただし、OP のコードをすべて見ないとわかりません。

于 2013-06-01T14:40:03.773 に答える