0

私はこのコードをjavascriptで実行しようとしています:

 $('#content').replaceWith("<div>" + <?php echo $tableau_Text?> + "</div>");

しかし、私のために働いていません。それは私には何も示していません。PHP code次のような静的なものに変更すると、次のようになります。

 $('#content').replaceWith("<div>Hello World</div>");

それはそれで完璧に動作します。

私のhtml#content定義は次のとおりです:-

<div id="content">
    <?php echo $show_menu;?>
</div>

何か案が?どうもありがとうございます!

アップデート:

var$tableau_textは次のようになります。

$tableau_Text = "<ul class='object_list' id='object_list' data-role='listview' data-inset='true' data-theme='c'>$TableauText</ul>";

$TableauText同じ形式のリストアイテムはどこにありますか。

$TableauText = <li class='menuA' id='menuA' data-role='list-divider' data-icon='false'>River Flow</li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Rossiniere</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Montsalvens</a></li>
<li class='menuA' id='menuA' data-role='list-divider' data-icon='false'>Lake Level</li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Rossiniere</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Montsalvens</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Lessoc</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Rossens</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Maigrauge</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Schiffenen</a></li>
<li class='menuB' id='menuB' data-icon='arrow-r'><a href='#' target='foo'>Maigrauge</a></li>

解決策:同じIDのリスト要素がいくつかありましたが、ここに貼り付けた後は気づかなかったため、コードがおかしくなりました...

4

4 に答える 4

7

これを試して:

$('#content').replaceWith("<div>" + <?php echo json_encode($tableau_Text); ?> + "</div>");

与えられた:

$TableauText = 'hello world ""';

$tableau_Text = "
        <ul class='object_list' id='object_list' data-role='listview' data-inset='true' data-theme='c'>
        $TableauText
        </ul>";

ブラウザには次のように表示されます。

$('#content').replaceWith("<div>" + "\n        <ul class='object_list' id='object_list' data-role='listview' data-inset='true' data-theme='c'>\n        hello world \"\"\n        <\/ul>" + "</div>")​

としてレンダリングされます

hello world ""
于 2012-07-23T12:31:28.230 に答える
3

PHPコードを変数として扱わないでください

これを試して

$('#content').replaceWith("<div><?php echo $tableau_Text?></div>");
于 2012-07-23T12:32:01.923 に答える
2

引用符で囲まれた関連テキストを出力しない限り、<?php echo $tableau_Text?>無効な文字列連結が発生し、JavaScript構文エラーが発生します。ただし、JavaScriptがブラウザに到達する前にPHPが実行されるため、文字列の連結を使用する必要はまったくありません。

于 2012-07-23T12:32:59.597 に答える
1

1つの反対の質問:あなたのコードです

$('#content').replaceWith("<div>" + <?php echo $tableau_Text?> + "</div>");

.jsファイルで?

もしそうなら、これは仕事をしたいです。jsを含める前にこれを行う必要があります

var tableau_Text  = ' <?php echo $tableau_Text?>';
<script src = 'any_js.js'></script>

と.jsで

$('#content').replaceWith("<div>" + tableau_Text + "</div>");
于 2012-07-23T13:01:25.627 に答える