0

私は 10 個のラジオ ボタンのセット(たとえば、1 から 10 の評価システム) を持っていますclick。1 つ選択すると、評価が自動的に送信されます。これは、次の方法で実現されます。

<td>
    <input type="radio" name="img_rating" value="1" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="2" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="3" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="4" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="5" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="6" onclick="document.goRate.submit();return false;">               
</td>
<td>
    <input type="radio" name="img_rating" value="7" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="8" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="9" onclick="document.goRate.submit();return false;">
</td>
<td>
    <input type="radio" name="img_rating" value="10" onclick="document.goRate.submit();return false;">
</td>   

これを行う方法は、必要なコードが少ない方法ですか? 理想的には、同じonclickを 10 回含める必要がないように何らかの方法がありますが、おそらくこれが最善の方法です。

前もって感謝します。

4

1 に答える 1

0

必要に応じて、jQuery を使用できます。それは次のようになるからです:

<form name="gotoRate" id="gotoRate">
    <input type="radio" value="1" name="img_rating">1
    <input type="radio" value="2" name="img_rating">2
    <input type="radio" value="3" name="img_rating">3
    <input type="radio" value="4" name="img_rating">4
    <input type="radio" value="5" name="img_rating">5
    <input type="radio" value="6" name="img_rating">6
    <input type="radio" value="7" name="img_rating">7
    <input type="radio" value="8" name="img_rating">8
    <input type="radio" value="9" name="img_rating">9
    <input type="radio" value="10" name="img_rating">10
</form>​​​​​​​​​​​​​​​​​​​​​​​​

そしてjQueryの部分

$(function(){
   $("input:radio").change(
      function(){
         $("form#gotoRate").submit();
      }
   );
});
于 2012-12-11T20:31:50.420 に答える