PHPページには順序付けられていないリストがあります。私は、リスト内の項目のいずれかをクリックして、ユーザーを待って、いくつかのjQueryコードを持っています。ユーザーはこれらの項目のいずれかをクリックすると
$(function() {
$('li.large_box').css('cursor', 'pointer')
.click(function() {
$('#db_sections').empty();
var show_id = this.id;
$.post('get_section_dates.php', { show_id: show_id }, function(sections) {
$('#section_dates_feedback').html(sections);
});
});
});
jQueryのコードは、作るPHPスクリプトにそれはIDが送信しますデータベースクエリと結果をドロップダウンリストのビルド:
if (isset($_POST['show_id'])) {
$show_id = $_POST['show_id'];
$result = mysql_query("SELECT `id`,`air_date` FROM `daily_show` WHERE show_id = '".$show_id."'");
echo"<div id='dates_select'>";
echo "<select id='date_select'>";
echo "<option value='0'>Choose a date</option>";
while ($query = mysql_fetch_assoc($result))
{
$id = $query['id'];
$air_date = strtotime($query['air_date']);
$date = date("M-d-Y \(D\)",$air_date);
echo "<option value='$id'>$date</option>";
}
echo "</select>";
echo "</div>";
}
を私はリスト項目のすべてのいずれかをクリックし最初の時間はすぐに動作し、ドロップダウンボックスが正しく出てきます。問題は、次のリスト項目をクリックすると、古いドロップダウンリストの代わりに新しいドロップダウンリストを作成するのに数秒かかります。別のリスト項目をクリックするたびにドロップダウンリストが作成されるまでの時間が合成され、毎回1分以上かかることになります。
照会しているデータベーステーブルはわずか12レコードで、通常は最大で1または2行しか返しません。
私はPHP/jQueryを使い慣れていて、このプロセスを遅くするコードではっきりと明らかなことがあれば疑問に思っていました。
私の問題を見てくれてありがとう!
おかげで私は放火魔でそれを見て、私は私の主な問題は、私は私の質問に入れPHPコードの後に、私は私が何かをエコー二行を残していることだと思いますこのエコーのように ""はドロップダウンの後に動作する必要のある機能を含むjavascriptファイルです。これは数倍の負荷がかかり、減速の原因となるファイルです。このjsファイルは、誰かがリスト項目をクリックするたびに読み込まれる必要はありませんが、スクリプトファイルのエコーアウトをコメントすると、私のページが分解されます。 – JackBurton