ボックスが 5 つあるゲームがあり、ボックスがクリックされたときに、実際には link_to_remote とまったく同じように ajax リクエストをコントローラーに送信したいと考えています。情報のハッシュをコントローラーの定義に送信する必要がありますが、返送または更新するために何も必要ありません。
次の jQuery/js の混乱が行うことは、正しいまたは正しくない関数をレンダリングすることです。これらの関数から、情報のハッシュを使用して ajax リクエストをコントローラーに送信できるようにしたいと考えています。
$('#tones a').click(function(e) {
if (playGame) {
id = this.id.replace('t', '')
if (correctCharacter[1] == id) {
correct();
} else {
incorrect();
}
addCharacters();
}
});
})
link_to_remote には次の構文があり、このリンクは実際にはまったく関係がないことを知っています:
# Generates: <a href="#" onclick="new Ajax.Updater('posts', '/blog/destroy/3', {asynchronous:true, evalScripts:true});
link_to_remote "Delete this post", :update => "posts", :url => { :action => "destroy", :id => post.id }
このリンクを後者の関数で機能させる方法を教えていただければ幸いです。1 つの ajax リンクが必要なだけです。または、コントローラーに送られ、情報のハッシュを送信する適切なものを要求するだけです。
次のブロックに入れたい。正しい場合はトリガーされ、正しくない場合はトリガーされます。
if (correctCharacter[1] == id) {
correct();
} else {
incorrect();
}
これは、セキュリティ関連の情報を確認するためだけにページに配置した link_to_remote の js ソースです。情報を投稿したい場所とは関係ありませんが、特定のアプリケーションに関連しています。
<a href="#" onclick="new Ajax.Updater('posts', '/groups/new', {asynchronous:true, evalScripts:true, parameters:'authenticity_token=' + encodeURIComponent('jQx+jlICHcZ3X6SPOcNUNBPJF8qLGDarO/nasHfWkvQ=')}); return false;">Test</a>