jqueryでロードしたPHPファイル更新後の表示について

このQ&Aのポイント
  • jqueryを使用してロードしたPHPファイルの更新後に表示される内容について解決策を教えてください。
  • IEのインターネットオプションで「ファイル削除」をする必要があり、更新しないと以前のデータが表示される現象に対処する方法を教えてください。
  • phpファイルの更新状況を最新の状態でjqueryのloadする方法について教えてください。
回答を見る
  • ベストアンサー

jqueryでロードしたPHPファイル更新後の表示について

始めまして、jqueryを勉強してます。。 かなり初心者です。何度もすみません。 jqueryでロードしたPHPファイルにmysqlのデータを反映させてます。 環境:jquery1.4,php5.1,mysql,eclipse3.5,IE6です。 また記載したソースファイルは同じ階層にあります。 質問はjqueryでロードしたPHPファイル更新後の表示についてです。 IEのインターネットオプションで「ファイル削除」をしてIE更新後しか、 更新したmysqlデータや、phpファイルで更新した内容が、 HTMLファイル<div id="box">で表示されません。 更新しないと、以前のPHPファイルデータが表示されます。 (おそらく,更新後phpファイルのデータの再loadになると思います。。) 解決策ご存知の方しましたら、教えていただけないでしょうか? <!--home.html--> <html> <head> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="php.js"></script> <title></title></head> <body> <a href="javascript:php()">phpファイル</a> <div id="box">ここに表示</div> </html> //php.js function php(){$("#box").load("phpsql.php");} //phpsql.php. //このファイル内の$testo=1;を$testo=2;に変更しても、「ファイル削除して」更新を //しないと、$testo=1でhtml上で表示されます。 <?php $conn =mysql_connect("","ユーザー","パスワード"); mysql_query("SET NAMES 'sjis' ", $conn); mysql_select_db("データベース",$conn); $sql ="select * from テーブル名"; $rs=mysql_query($sql,$conn); $testo=1; echo '<table>'; echo '<tr><th>NO</tr><th>氏名</th></tr>'; while($row=mysql_fetch_assoc($rs)) { echo '<tr>'; echo '<td>'.$id.'</td><td>'.$name.'</td>'; echo $testo; } ?> 以上がソースです、phpファイルの更新状況を最新の状態でjqueryのloadする方法あれば、教えていただけないでしょうか? すみません。。(SQLは無関係ですね。。)

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

PHP側で、Header情報を適切にだせばよいかと。 必ず、printとかprint_rとかechoする前に、Header出力します。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja-JP"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv="Expires" content="0" /> 見たいなのの後に、 <?php $conn =mysql_connect("","ユーザー","パスワード"); ========= echo $testo; } ?> 書くか、 PHP関数で先頭で、 header('Last-Modified: '.gmdate( 'D, d M Y H:i:s').' GMT'); header('pragma: no-cache'); header("Cache-Control: no-cache, must-revalidate"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); これを実行する。

okinao
質問者

お礼

私のような初心者に合わせて回答いただける事に 感謝します。ありがとうございます

okinao
質問者

補足

yyr446さん、前回に引き続き、今回もありがとうございます。 試して見ました。 <head><meta----> と<head>内に記載しましたが、読み込んだ、PHPファイルの状態でうまくいきませんでした。。。 またphp内で header('Last-Modified: '.gmdate( 'D, d M Y H:i:s').' GMT'); -----; -----; <?php $conn =mysql_connect("","ユーザー","パスワード"); > とするとエラーが表時され。。私の記載方法が悪いかもです。。。 でも、できないわけではなさそうなので、がんばってみます。 本当にありがとうございまた。また掲示板で見かけたら よろしくお願いいたします。

その他の回答 (1)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

うーん、私の環境では、そのまんまコピペしても再現できませんね。 単純に header("text/plain"); でもだめだし、 インターネットオプションで「ファイル削除」をしてIE更新後は 変わるんですよねえ、となるとやはりキャッシュの問題だと 思うんですが。 別のブラウザーFirefoxとかだとうまくいきますか? 投稿されてない隠された部分に問題があったりして...

okinao
質問者

補足

yyr446さん、またありがとうございます。 インターネットオプションで「ファイル削除」をしてIE更新後は 変わるんですよねぇ⇒はい、これではキチンとPHPファイルに MYSQL上で更新した、データも反映されてきます。。。 多分、私もキャッシュの問題の問題かと思います。 頑張ってしらべてみますね。 本当にありがとうございました。 また、掲示板でみかけたら、お力貸してくださいね m(_ _)m

関連するQ&A

  • JQUERY,PHP,whlie内のinput送信について

    JQUERY,PHP,whlie内のinputについて JQUERY,PHPを勉強してます。初心者です。。 PHPで、mysqlのデータ読み込み(SQL読み込み、表示はできてます) テーブル表示は下記ような感じです。 (表示テーブル内のイメージ。。) ID 名前 1 AAA 送信ボタン |(type submit 利用) 2 BBB 送信ボタン |(type submit 利用)whileで表示 3 CCC 送信ボタン |(type submit 利用)whileで表示 1 AAA IDの送信はうまくいき、受け取ったphpファイルが表示されますが、 2 BBB 、3 CCCの送信ボタンが反応ありません。。 イメージとしてはJQUERYのloadを利用して、別PHPファイルで IDを受け取り、表示させたいです。。 説明がへたですみません。。。 どなたか、ご存知の方いましたら、教えていただけないでしょうか。。 環境JQUERY1.4、PHP5.1 //sql.php最初のページ <html> <head><title></title></head> <body> <script type="text/javascript" src="jquery1.4.js"></script> <script type="text/javascript" src="sql.js"></script> <?php $conn =mysql_connect("","ユーザー","パスワード"); mysql_query("SET NAMES 'sjis' ", $conn); mysql_select_db("データベース",$conn); $sql ="select * from テーブル名"; $rs=mysql_query($sql,$conn); echo '<table border=1 bordercolor="black"bordercolordark="red" cellspacing=0 cellpadding=2>'; echo '<tr><th>NO</tr><th>氏名</th><th>出身</th><th>性別</th><th>仕事</th>'; echo '<th colspan=2>メンテ</th></tr>'; while($row=mysql_fetch_assoc($rs))//while内の記載が問題でしょうか? { //whileでデータを読み込み(上記の表示テーブル内のイメージが表示されてます。) $name = mb_convert_encoding ($row['name'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止 $id = mb_convert_encoding ($row['id'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止 echo '<tr>'; echo '<td>'.$id.'</td><td>'.$name.'</td>'; echo '<td><input type="submit" value="更新" id="up" />'; echo '<input type="hidden" id="data" value='.$id.' />'.$id.'</td>'; echo '</tr>'; } echo '</table>'; ?> <div id="box">ここに表示</div> </body> </html> //sql.js JSの問題でしょうか? $(function(){ $("#up").click(function () { var upphp = $("#data").val(); $("#box").load("sqlup.php", { data:upphp}); }); }); //受信側sqlup.php <html> <head> <title></title></head><body> <?php $conn =mysql_connect("","ユーザー","パスワード"); mysql_query("SET NAMES 'sjis' ", $conn); mysql_select_db("データベース",$conn); $id=$_POST["data"];//値データはsql.jsから… $sql ="select * from テーブル名 where id=${id}"; $rs = mysql_query($sql,$conn); $row = mysql_fetch_assoc($rs); $name = mb_convert_encoding ($row['name'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止 mysql_close($conn); ?> <table border=1 style="width:300;"> <tr><th style="width:100;">登録番号</th><td style="width:200;"><?= $id ?></td></tr> <tr><th>名前</th> <td><input type="text" name="name" value=<?= $name ?> > </td></tr></table> <tr><td colspan="2" align="center"> </td></tr></table> </body> </html> 説明がへたで本当にすみません。。どなたか、解決策ご存知でしたら、 よろしくお願いしたいます。。。お力を貸してください。。

  • Jquery.PHPファイルのechoが表示されない

    初めまして、Jqueryのloadについて教えてください。 環境は、vista,eclipse3.5 ,php5.0 JQuery1.4.2,xmapp,IE8です ファイルはすべて同じ階層にあります。 PHPファイル単体で表示させると、 正常にecho内'aaa'が表示されるのですが、 JQUERYを介してみると、 phpファイルの内部echo'aaa'が表示されません。。。 <?php ?>から外しhtmlであればloadすることはできます。 どなたか改善策ご存じでしたら、よろしくお願いしたします。 <!--html--> <html><head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="text.js"></script> <title></title></head> <body> <li><a href="javascript:changetext()">リンク</a></li> <div id="box">ここに表示</div> </body> </html> //text.js function changetext() {$("#box").load("testo.php");} //testo.php <?php echo 'aaa'; ?>

  • PHP実行時の警告について

    こんばんわよろしくお願いします。 aaacafeのレンタルサーバーでPHPのバージョンは4.2.3です。 Mysqlに接続して結果を一行づつ表示したいのですが 実行時に下記の2行警告が出てヘッダ部分しか表示しません。 自分で調べてぼんやりとは原因はわかったのですが、 具体的にどう直してよいかわかりません。 ご教示お願いします。 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource 以下ソースです。 <?PHP $sql = ""; $sql .= "select * from LIVE"; $sql .= " ORDER BY DATE DESC"; ?> <HTML> <HEAD> <TITLE>接続テスト</TITLE> </HEAD> <BODY> <?php //SQL発行 $rs = mysql_query($sql, $conn); echo "<table cellSpacing=0 cellPadding=0>\n"; echo "<tr bgcolor=yellow>"; echo "<th >日付</th>"; echo "<th>ツアータイトル</th>"; echo "<th>会場</th>"; echo "<th>アーティスト</th>"; echo "</tr>\n"; ■この行→ while( $rec = mysql_fetch_array( $rs, MYSQL_ASSOC ) ){ echo "<tr>\n"; echo "<td>" . _hs($rec['DATE']) . "</td>\n"; echo "<td>" . _hs($rec['TITLE']) . "</td>\n"; echo "<td>" . _hs($rec['PLACE']) . "</td>\n"; echo "<td>" . _hs($rec['ARTIST']) . "</td>\n"; echo "</tr>\n"; } //結果セットの解放 ■この行→ mysql_free_result( $rs ); //切断 mysql_close($conn); echo "</table>"; ?> </BODY> </HTML>

    • ベストアンサー
    • PHP
  • PHPでのMYSQL接続のデータ表示

    PHPのバージョンは4.2.3です。 index.php という一覧表示画面から 一意なKey文字列を受け取りそのデータに合致する データの詳細を表示する画面です。 実データ部分が表示されず困っています。 実行時のPHPのエラーも出力されないので いまいちどこが悪いのかわかりません アドバイスよろしくお願いします。 <?php require_once( "common.php" ); require_once( "const.php" ); if(! $conn = mysql_connect( 'ホスト名','ユーザー名','PASS')){ die( 'MYSQL接続失敗'); } $sql = ""; $sql .= "select * from LIVE "; $sql .= "ORDER BY Date DESC "; $sql .= "WHERE ID=".$_REQUEST[ "KEY" ]; echo $sql; mysql_select_db("DB名",$conn); $rs = mysql_query($sql, $conn); $DATE=$rs['DATE']; $TITLE=$rs['TITLE']; $PLACE=$rs['PLACE']; $ARTIST=$rs['ARTIST']; echo $DATE; echo $TITLE; echo $PLACE; echo $ARTIST; //$rec = mysql_fetch_array( $rs, MYSQL_ASSOC ); ?> <HTML> <HEAD><TITLE>ライブ予定</TITLE></HEAD> <BODY><H1 ALIGN="CENTER">ライブ予定詳細</H1> <A HREF="./">戻る</A> <TABLE BORDER="1" ALIGN="CENTER" WIDTH="100%"> <TR><TD BGCOLOR="#FFFFCC">日付</TD> <TD><?php HESC($rec['DATE']) ?></TD></TR> <TR><TD BGCOLOR="#FFFFCC">タイトル</TD> <TD><?php HESC($rec['TITLE']) ?></TD></TR> <TR><TD BGCOLOR="#FFFFCC">場所</TD> <TD><?php HESC($rec['PLACE']) ?></TD></TR> <TR><TD BGCOLOR="#FFFFCC">アーティスト</TD> <TD><?php HESC($rec['ARTIST']) ?></TD></TR> <TR><TD BGCOLOR="#FFFFCC">本文</TD> <TD></TD></TR> </TABLE> </BODY></HTML>

    • ベストアンサー
    • PHP
  • PHPでMySQLにデーターを追加するところで壁に当たってしまいました

    PHPでMySQLにデーターを追加するところで壁に当たってしまいました。 PHP5.3&MYSQL5.1 1.フォームへ入力 2.確認画面 3.MySQLへデーター追加 1.form <html> <head><title></title></head> <body> <form method="post" action="conf.php"> <table> <tr><th>番号</th><td><input type="text" name="id" /></td></tr> <tr><th>タイトル</th><td><input type="text" name="title" /></td></tr> <tr><th>テキスト</th><td><textarea name="cont" cols="40" rows="5" /></textarea></tr> <tr><th>日付け</th><td><input type="text" name="update" size="10" /></td></tr> </table> <input type="submit" value="送信" /><input type="reset" value="リセット" /> </form> </body> </html> 2.確認画面 <html> <head><title></title></head> <body> <table> <tr><th>番号</th><td><?php echo htmlspecialchars($_POST["id"]) ?></td></tr> <tr><th>タイトル</th><td><?php echo htmlspecialchars($_POST["title"]) ?></td></tr> <tr><th>テキスト</th><td><?php echo htmlspecialchars($_POST["cont"]) ?></td></tr> <tr><th>日付け</th><td><?php echo htmlspecialchars($_POST["update"]) ?></td></tr> </table> <form method="post" action="upld.php"> <input type="hidden" name="did" value="<?php echo htmlspecialchars($_POST["id"]) ?>" /> <input type="hidden" name="title" value="<?php echo htmlspecialchars($_POST["title"]) ?>" /> <input type="hidden" name="cont" value="<?php echo htmlspecialchars($_POST["cont"]) ?>" /> <input type="hidden" name="update" value="<?php echo htmlspecialchars($_POST["update"]) ?>" /> <input type="submit" value="登録" /> </form> </body> </html> 3.MySQLへデーター追加 <?php $Con = mysql_connect("localhost","root",""); if ($Con == false) {dir ("MySQLの接続に失敗。");} if (!mysql_select_db("phpdata",$Con)) {dir ("データーベース接続に失敗。");} $sql = "insert into daimoku(id,title,cont,update) values('".$_POST["id"]."','".$_POST["title"]."','".$_POST["cont"]."','".$_POST["update"]."')";//SQL文の作成 $res = mysql_query($sql) or die(mysql_error());//クエリの実行 mysql_close($Con);//切断 ?> <html> <head> <title></title> </head> <body> <p>ご登録ありがとうございました。</p> <a href="01.php">戻る</a> </body> 以上のコードでデーターの追加が出来ません。 どなたか教えていただけないでしょうか?

    • ベストアンサー
    • PHP
  • phpからdbへアクセスし、レコードを削除したい

    mysql・php初心者です。 現在、mysqlを使ってデータベースの構築をしています。 レコードの登録、検索に関しては出来たのですが、 何故かレコードの修正と削除が出来ません。 教えてください。 プライマリーキーはshop_id($shop_id)で、任意で数字を付けれるようにしてあります。 登録したデータベース側の表示は extract($_POST); $db = mysql_connect("localhost","********","********") or error_func(); mysql_select_db("******") or error_func(); mysql_query("set names utf8"); $result = mysql_query("select * from mobile_shop_entry where shop_name = '$shop_name'"); echo "<h3 class='message'>" . $shop_name . "の店舗情報を表示</h3>\n"; while($row = mysql_fetch_array($result)){ echo "<table id='table_02'><tr><th colspan='2' align='left' >" . $row['shop_name'] . "</th></tr>\n"; echo "<tr><th>会社名</th><td>" . $row['shop_name'] . "</td></tr>\n"; echo "<tr><th>住所</th><td>" . $row['shop_area'] . $row['shop_address'] . "</td></tr>\n"; echo "<tr><th>電話番号</th><td>" . $row['shop_tel'] . "</td></tr>\n"; echo "<tr><th>E-mail</th><td>" . $row['shop_mail'] . "</td></tr>\n"; echo "<tr><th>営業時間</th><td>" . $row['shop_time_am'] . "~" . $row['shop_time_pm'] . "</td></tr>\n"; echo "<tr><th>定休日</th><td>" . $row['shop_holiday'] . "</td></tr>\n"; echo "<tr><th>ID</th><td>" . $row['shop_id'] . "</td></tr>\n"; echo "<tr><td colspan='2' align='right'>\n"; echo "<img src='../images/edit-page-blue.gif'> <a href='shop_syuusei.php?shop_id="; echo $row['shop_id']; echo "'>ショップ情報を修正</a>\n"; echo " <img src='../images/delete-page-red.gif'> <a href='shop_sakujyo.php?shop_id="; echo $row['shop_id']; echo "'>ショップ情報を削除</a>\n"; echo " <img src='../images/edit-yellow.gif'> <a href='car_entry.php?car_id=\n"; echo $row['shop_id']; echo "'>在庫情報を登録</a></td></tr>\n"; } echo "</table>\n"; mysql_close($db) exit(); } ?> と記述しました。 このレコードを削除するには、上記のリンク部分 <a href='shop_sakujyo.php?shop_id="; echo $row['shop_id']; から、shop_sakujyo.phpという名前のファイルに <?php extract($_POST); extract($_GET); mysql_connect("localhost","*****","*****"); mysql_select_db("*******"); mysql_query("set names utf8"); //情報を削除 if($kakunin=="確認"){ $sql = "delete from mobile_shop_entry where shop_id = $shop_id "; mysql_query($sql); echo "<h1 class='message_red'>レコードの削除が完了しました。</h1>\n"; exit; } ?> 表示は削除が完了しました。と表示されるのですが、実際のデータは削除されていません。 どこが間違っているのかご存じのかたはいらっしゃいますでしょうか。。。 phpは5.0を使っています。

    • ベストアンサー
    • MySQL
  • PHPでMYSQLを使ったログイン

    PHPでMYSQLを使いってログインフォームを作ったのですが 画像の上の方ようなテーブルを作りPHP側のログインフォームでログインしてもらい 画像のusernameの[S]でログインしたらIDとFirst NameとLast NameをPHPで 画像の下の方のように表示するようにしたいのですが echo "<tr><th>ID</th><th>USERNAME</th><th>First Name</th><th>Last Name</th></tr>"; $st = ("select * from kd3musers where username='$username'"); (この間) echo "<tr><td>$id</td><td>$username</td><td>$first_name</td><td>$last_name</td></tr>"; (この間)の中身がわかりません。 別の書き方や、わかる方がいましたらよろしくお願いします

    • ベストアンサー
    • PHP
  • jquery上で2つのスクリプトの合体

    下記のように「サブページその1  hoge.ne.jp/read1000.php」からスクレイピングしたtakahashiという文字を、「メインページ hogehoge.jp/index.html」の<input type="text">内に表示可能なスクリプトがあります。【現在できていること その1】 また、メインページで取得した変数123456を、URLという形で「サブページ2 read2222.php」のPHPに渡し、サブページ2の中で「123456についてのPHP処理した結果」を、再度メインページで取得して表示するスクリプトがあります。【現在できていること その2】 【やりたいこと】 この2つのスクリプトを合体させ「サブページ1 read1000.php」からスクレイピングしたtakahashiという文字を、URLという形で「サブページ2 read2222.php」のPHPに渡し、サブページ2の中で「takahashiについてのPHP処理した結果」を、再度メインページで取得して表示したいというのが今回の趣旨で、スタックしている部分となります。 ***************************************************************** 【現在できていること その1】 【サブページその1 http://hoge.ne.jp/read1000.php】 <table border="1"> <tbody> <tr> <td class="class3_sql_name">takahashi</td> </tr> </tbody> </table> 【メインページ http://hogehoge.jp/index.html】 <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script> <script src="js/jquery.xdomainajax.js"></script> <script> // 引っ張ってきたいサイトのURL url = 'http://hoge.ne.jp/read1000.php'; $.get(url, function(data){ var content3_sql_name = $(data.responseText).find('.class3_sql_name').text();   $("[name='ca2_stock_name']").val(content3_sql_name); }); </script> <input type="text" name="ca2_stock_name" value="" /> ***************************************************************** 上記のスクリプトを実行すると、 <input type="text" name="ca2_stock_name" value="takahashi" /> という形が完成します。 ****************************************************************** 【現在できていること その2】 【サブページその2 http://hoge.ne.jp/read2222.php】 <div id="news200"> こんにちは <?php echo $_GET["name"]; ?> さん </div> 【メインページ http://hogehoge.jp/index.html】 <script type="text/javascript"> var usr_id='123456' $(function(){ $("#read200").load("https://hoge.ne.jp/read2222.php?name="+usr_id+" #news200 ul", function(data) { if(data == null){ $("#read200").append("読込みに失敗しました"); } }); }); </script> <div id="read200"></div> ***************************************************************** 上記のスクリプトを実行すると、 メインページ 上で、サブページ2の<div id="news200"/>....<div> 間を拾ってきて表示することができます。                → こんにちは123456さん メインページ内で「read2222.php?name="+usr_id+"」という形でURLとして一旦サブページ2にトスし、 $_GET["name"] でサブページで処理しものをあらためてメインページで表示させています。 ***************************************************************** 【やりたいこと】 上記の2つのスクリプトを合体させ、 var usr_id='123456' の代わりに、 【http://hoge.ne.jp/read1000.php】にある<td class="class3_sql_name">takahashi</td> のtakahashiを表示させたいと考えています。                → こんにちはtakahashiさん 考え方としては var content3_sql_name の変数をvar usr_idの代わりにすればいいだけです。 ************************************************************** 【試したがうまくいかなかったスクリプト】 <script type="text/javascript"> url = 'http://hoge.ne.jp/read1000.php'; $.get(url, function(data){ var content3_sql_name = $(data.responseText).find('.class3_sql_name').text(); $(function(){ $("#read200").load("https://hoge.ne.jp/read5555.php?name="+content3_sql_name+" #news200 ul", function(data1) { if(data1 == null){ $("#read200").append("読込みに失敗しました"); } }); }); }); </script> <div id="read200"></div> ********************************************************** どこがいけないのかご指導いただけませんでしょうか? 宜しくお願い致します。

  • jQuery、tdマウスオーバー、行の先頭th操作

    jQueryについて質問です。 <!DOCTYPE html><html><head> <style type="text/css"> th.e {background-color:orange;} </style> </head><body> <table border='1' cellspacing='0'> <tr> <th>test</th> <td>A</td> <td>B</td> <td>C</td> </tr> <tr> <th>test</th> <td>A</td> <td>B</td> <td>C</td> </tr> </table> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script> $("table td").mouseover(function(){ $(this).parent().find("th").toggleClass("e"); }).mouseout(function(){ $(this).parent().find("th").toggleClass("e"); }); </script> </body></html> 上記で動いて嬉しかったのですが、もやもやしています。 this → parent → find が遠回りでスカッとしません。 スカッとする方法はありますか?

  • htmlのformの表示について【Jquery】

    <script type="text/javascript" src="http://code.jquery.com/jquery-2.1.1.min.js"></script> <script type="text/javascript"> function formChanged(ev){ var sel = $('.chk:checked').map(function () { return this.checked ? this.value : null; }).get().join(); $("#output").text(sel); } formChanged(null); $(document).on("change",'.chk:checked',formChanged); </script> <form method="post" action="mail.php"> <table> <tr> <th>カテゴリー</th> <td> ・ABC: <input type="checkbox" name="カテゴリー[]" value="[abc]" class="chk" /> ・DEF: <input type="checkbox" name="カテゴリー[]" value="[def]" class="chk" /> ・GHI: <input type="checkbox" name="カテゴリー[]" value="[ghi]" class="chk" /> </tr> <tr> <th>選択した製品シリーズ</th> <td><span id="output"></span></td> </tr> <tr> </table> </form> これは、チェックボックスにチェックをいれたチェックボックスの値がリアルタイムに表示される仕組みなのですが、逆にチェックを外した場合は、値が消えません。消えるようにするにはどうしたらいいでしょうか。アドバイスをいただけると幸いです。

専門家に質問してみよう