1

私の問題は、ページにいくつかのリンクがあり、現時点では html ファイルでルビー生成されていることです。そのため、ユーザーがページをロードすると、データベース データに基づいてリンクが作成されます。ただし、DB 生成ではなく、リアルタイムで動作するオプションも 1 つあります。

たとえば、ボタン「A」が現在送信されている場合、リンクは次のように要求する必要があります。

http://url/?(ruby generated parametrs)&button=A.

次に、ユーザーがボタン 'B' をクリックすると、リンクが次のように要求されます。

http://url/?(ruby generated parametrs)&button=B

要約すると、基本的に、Jquery はリンクにパラメーターを 1 つ追加してから、サーバーにリクエストを送信する必要があります。

これは可能ですか?どうやってやるの?

PSオプションボタンの1つを送信するときにページ上のすべてのリンクをリロードするという考えは強く嫌います。これは特定のアプリ機能に接続されており、ページにはそのようなリンクがたくさんあります。

コード:

 array[i]="<span id='width_measure_#{i}'>"+(link_to(array[i], {:controller =>'tests',  :action => 'add_key', :keyword => array[i], :position=>i}, :class=>'unsaved_links', :id=>i, :method => :post, :remote => true))

HTML 出力:

<a href="/tests/46/add_key?keyword=TEST&amp;position=0" class="unsaved_links" data-method="post" data-remote="true" id="0" rel="nofollow">TEST</a>

最終的な要求を求めていました:

<a href="/tests/46/add_key?keyword=TEST&amp;position=0&amp;button=A" class="unsaved_links" data-method="post" data-remote="true" id="0" rel="nofollow">TEST</a>
4

2 に答える 2

0

フォローしてみてください。デモはこちら

HTML

<a id="buttonA" href="http://yahoo.com" target="_blank">Yahoo</a>
<a id="buttonB" href="http://google.com" target="_blank">Google</a>
<a id="buttonC" href="http://twitter.com" target="_blank">twitter</a>

jQuery

$('a').each(function(){

    var newUrl = $(this).attr('href') + '?button=' + this.id;
    $(this).attr('href', newUrl);

});
于 2013-06-07T05:27:52.510 に答える