0

私はモバイル向けの複雑なPHPを使用しており、AJAXを使用して(のdata-ajax = "true"で示されているように<div>)、他のPHPファイルをページに含め、同時にjQueryを使用して既存のデータを非表示にしています。ヘッダーとアドレスが変更されている間、実際のWebページは単に更新されています。最初の新しい「ページ」を更新するとき、JavaScriptは追加されません。コアページには出力バッファリングを含むPHPファイルが含まれていますが、それがスクリプトエラーの原因になるとは思いませんでした。私はPHP5.4.9を使用していますが、それが違いを生むかどうかはわかりません。

コアページ(ページ1):

<?php
if (!isset($_SESSION)) session_start();

include_once("$path/lib/functions/show_header.php");

//PHP page including output buffer
show_header($html_back='normal', $html_home='public_page', $header_title='Directory', $bool_back=TRUE, $title=$header_title, $javascript=&$myScript, $cache=FALSE, $viewport=TRUE);
?>

<ul id="list" data-inset="true" data-role="listview" ><!--data-filter="true" data-filter-placeholder="Search for Feeds..."-->
<li id="header" data-role="list-divider">Select a Search Option</li>

<li>
    <a href="page2.php?header=Option1" data-ajax="true">Option 1</a>
</li>
<li>
    <a href="page2.php?header=Option2" data-ajax="true">Option 2</a>
</li>
<li>
    <a href="page2.php?header=Option3" data-ajax="true">Option 3</a>
</li>

</ul>
</div><!-- // Content-->
</div><!-- // Page-->
</body
</html>

挿入されるコード:

<script>alert("The JS is working!");</script>

<div data-role="page" data-theme="c">
    <div data-role="header" data-theme="b">
        <a href="#" data-rel="back" data-ajax="true" data-icon="arrow-l" data-direction="reverse">Back</a>
        <h1><?php echo $_GET['header']?></h1>
    </div>
    <div data-role="content" role="main">

        <textarea id=search name="search" cols="1" rows="1" onblur="return validate()" onfocus="this.innerHTML=''">Search For...</textarea>

        <ul id="list" data-inset="true" data-role="listview" >
            <li id="header" data-role="list-divider"></li>

            <li>
                <a id=button href="" data-ajax="true">Search</a>
            </li>

        </ul>
    </div><!-- // Content-->
</div><!-- // Page-->

どんな援助もいただければ幸いです。私はPHPの経験がありますが、AJAXとjQueryに関しては初心者です。

4

1 に答える 1

0

jQuery は一番外側に含まれる PHP のみを取得していました<div>。どういうわけか、これはドキュメントにはなりませんでした。ドキュメンテーションは王様です!

その中にjavascriptとphpを移動すると、<div>やりたいことが何でもできました。その時点で、インライン JavaScript を取り除き、代わりに JavaScript イベント ハンドラーに切り替えました。jquery の正確な使用法を突き止めることはできませんでした<div>

于 2013-03-07T13:12:35.077 に答える