- ベストアンサー
Ajaxの評価プログラムについて
Ajaxを利用して goodかbadを評価してくれるサンプルを探しています。 mysqlを使っているとより良いです ちなみに星型のではなく goodかbadのどっちかというものを探しています
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1,2です。 > 「ajax 星型 評価」と検索するとホームページを作る人のネタ帳 こちらですね。 MySQLとAjaxによる星型評価ボタンの設置方法*ホームページを作る人のネタ帳 http://e0166.blog89.fc2.com/blog-entry-263.html > pyaのように評価するときにページを移動しない方法を探しています。 そういうことでしたか。 でしたら pya! のコードが参考になりそうですね。 ----- hyouka = new function(){ ... } http://pya.cc/pyaimg/pimg.php?imgid=83775&msgfull=yes ----- ** onclickでページ遷移しないように ** onclickでfunctionを実行したときに「リンク先への遷移」など、ブラウザ通常の動作も同時にしてしまうことがあるので、return false; で回避します。 掲示板/JavaScript質問板/過去ログ/一覧/ onClick returnについて - TAG index Webサイト http://www.tagindex.com/kakolog/q4bbs/201/402.html onclickの簡単な例を出すと、こんな感じです。 ------ <input id='Test' type="button" value="onclickのテスト" /> <script type="text/javascript"> var test = document.getElementById('Test'); test.onclick = function(){ alert('クリックされました'); return false; // inputボタンが押されたときのブラウザ既定の動作を無効化する } </script> ------ ** 評価HTMLを星形ではなくgood,badの2択に ** HTMLを星形の画像から good, bad にします。 <input id='Good' type="button" value="Good" /> <input id='Bad' type="button" value="Bad" /> あとはJavaScriptのonclickで動作をフックするだけ。そんなに難しく考えることはないですよ。
その他の回答 (2)
- think49
- ベストアンサー率59% (285/482)
#1です。 > 評価とはユーザーがgoodをクリックするとデータベースにgoodの数が登録すると言うものです goodの数…?ということは、badの数もデータベースに登録されるのでしょうか。 イメージとしては http://pya.cc/ のようなものですか? この場合、サーバサイドスクリプトだけで完結できるので、Ajaxを利用するとかえって煩雑になる気がします。(どこかのAPI利用ならわかるのですが) もう少し具体的な用途を教えてもらえれば代替案が出てくるかもしれません。 あと今更ですが > ちなみに星型のではなくgoodかbadのどっちかというものを探しています もし星形のサンプルがあるのなら、URLを開示してもらえればgood,badに変化させるためのアドバイスが出来るかもしれません。 > ただクリックしてもページの一部を読み込むものとします こちらの意味はわかりません…。
補足
イメージはそんな感じです 「ajax 星型 評価」と検索するとホームページを作る人のネタ帳 というサイトがあるのでそこのサンプルを見てください。 pyaのように評価するときにページを移動しない方法を探しています。
- think49
- ベストアンサー率59% (285/482)
> Ajaxを利用して > goodかbadを評価してくれるサンプルを探しています。 goodとbadの評価基準がわからないので、とりあえず「ファイルの中身がgoodであれば、goodを返す」ようにしました。 --- (function(){ function createHttpRequest(){ if(window.ActiveXObject){ // for IE try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e2) { return false; } } } else if(window.XMLHttpRequest){ return new XMLHttpRequest(); } else { return false; } } function getText(file){ var req = createHttpRequest(); req.open('GET', file, false); req.send(null); if (req.readyState == 4 && req.status == 200){ return req.responseText; } } function init(){ var file = ['1.txt','2.txt']; var str = ''; for(var i=0,max=file.length; i<max; i++){ str = getText(file[i]); if(str == 'good'){ alert('FileName = '+file[i]+"\nContents = "+str+"\nstatus = good"); } else { alert('FileName = '+file[i]+"\nContents = "+str+"\nstatus = bad"); } } } if(typeof window.addEventListener == 'function'){ window.addEventListener('load', init, false); } else if(typeof window.attachEvent == 'object'){ window.attachEvent('onload', init); } })();
補足
回答ありがとうございます 説明不足で申し訳ございません 評価とはユーザーがgoodをクリックするとデータベースにgoodの数が登録すると言うものです ただクリックしてもページの一部を読み込むものとします
お礼
ありがとうございます! なんだか出来そうな気がします。