###前提・実現したいこと
PHPでWebアプリケーションを作っています。
データベースから取得したデータを以下のようにテーブルに出力したいです。
・画面初期表示:500件を表示。
・続きをみるを押下:+500件をテーブルへ追加表示。
・自動更新:現在表示している件数を30秒ごとに自動で更新して表示する。
いずれもAjaxをつかって画面更新無しで実現します。
コードはざっくり以下の感じです。
###該当のソースコード
lang
1<div id="dataArea"> 2</div> 3
lang
1.ajax{ 2#PHP呼び出し 3success{ 4 #DBdatasはPHPのデータ戻り値 5 $('#dataArea').append('DBdatas'); 6} 7
lang
1print <table id="selection"> 2 3#ループ処理 4 print <tr><td>データ1</td>; 5 print <td>データ2</td>; 6 print <td><input type="button" id="btn1">ボタン1</td>; 7 print <td><input type="button" id="btn2">ボタン2</td></tr>; 8### 9print </table>
###発生している問題・エラーメッセージ
上記処理でデータとボタンは表示されます。
ただし、以下2点の問題が発生しています。
####1.ボタンが押せない
ボタンは表示されます。
ただし押した際に発生するイベントが動作しません。
イベントはjsファイルに以下のように記載しています。
$('#btn1').click(function〜
####2.id="selection"をjQueryで操作できない
こちらもボタンと同じく動作しません。
具体的にはクリックしたら色が変わってクラスをtrに付与するイベントを1.同様にjsファイルにjQueryで記載しているのですが、反応しません。
###仮説
Ajaxでの読み込みでなく、初期表示でPHPをHTMLから直接includeすれば問題は発生しませんでした。
もしかしたらAjaxが問題?と思うのですが、なんとか回避方法を見つけたいです。
「続きを見る」の機能はAjax必須と思うので、初期表示での回避はできないと考えています。
AjaxもしくはjQueryのバグなんでしょうか?
知恵をお貸しください。。。
###補足情報(言語/FW/ツール等のバージョンなど)
OS:WindowsServer2012R2
DB:MS SQL Server 2016
MW:IIS
PHP:PHP7.1
Browser:IE11
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/24 12:02