私は4x4のグリッドにテーブルを持っています。彼らはすべてブラックボックスだとします。私は今、持ち歩くと灰色に変わるようにします。
しかし、テーブルセルをクリックすると灰色になり、どういうわけかそのセルの座標を$ _POST関数に渡すことができますか?私は十分に記述的であることを望む。
私は4x4のグリッドにテーブルを持っています。彼らはすべてブラックボックスだとします。私は今、持ち歩くと灰色に変わるようにします。
しかし、テーブルセルをクリックすると灰色になり、どういうわけかそのセルの座標を$ _POST関数に渡すことができますか?私は十分に記述的であることを望む。
$_POST
が一般的にフォームデータに使用されますので、クリックすると隠された<input>
要素が渡される必要があります(javascript経由)。 $_POST
のトリガー方法に応じて、同じクリックイベントでフォームを送信することも、他のアクションによってフォームを送信することもできます。
$_POST
でデータを渡す唯一の方法は、通常はフォームまたはAJAXを使用する方法です。
各セルにonclick
イベントが定義されているようにテーブルを作成します。この関数を呼び出すと、post
を介してフォームを送信する関数を呼び出します。
ここでjQueryのおたく -
$('td').click(function() {
$.post("table_process.php", { cell: $(this).attr("#cell_id") },
function(data){
alert("Cell: " + data);
});
});
ようなものであるべき。それをやっての
OPがjQueryを使用していることをどのように知っていますか? – jondavidjohn
私は彼がjQueryの使用に頼ることができると仮定しました。 = /。あなたの答えはより良いです。もっと理にかなっている。 – Andrew
私はそれをやろうとしましたが、それはうまく動作しませんでした。どんな種類のJSであっても、どのくらい入れているかにかかわらず、ウェブページの動作には何の影響もありません。 – AKor
ライブラリに依存しない方法:http://jsfiddle.net/sdleihssirhc/eBD9L/
それはIE6やその他もろもろ上では動作しませんので、それは、td:hover
を使用しています。
情報はどのように '$ _POST'によって設定されますか? – jondavidjohn
私はこの作業をしようとしていますが、PHPループを使用してテーブルを出力しています。これはonclickイベントを動作させないように思われます。 – AKor
JavaScript(onclickイベントのような)を実行するブラウザは、あなたのページがPHPによって生成されたことを知らない。問題は、コードが間違った出力を生成することであり、ループやその他の構造を使用したことではありません。それはあなたのロジックではなく、ツールではエラーです。 –