私はこれを見てきました: Radio Button change event not working in chrome or safariで、探していた解決策が得られませんでした。ラジオ ボタンと onClick="jarod();" を含む単純なフォームがあります。jarod() は上記で呼び出された関数です。コードを参照してください:
<script type="text/javascript">
function jarod()
{
alert('yes');
}
</script>
HTML フォームは次のとおりです。
<form id="form_601799" class="appnitro" method="post" action="/formbuilder/view.php">
<div class="form_description">
<h2>Input Information to Prepare Answer</h2>
<p></p>
</div>
<ul >
<li id="li_1" >
<label class="description" for="element_1">Number of paragraphs: </label>
<div>
<input id="element_1" name="element_1" class="element text small" type="text" maxlength="255" value=""/>
</div>
</li> <li id="li_2" >
<label class="description" for="element_2">Paragraph 1: </label>
<span>
<input id="element_2_1" name="element_2" class="element radio" type="radio" value="1" />
<label class="choice" for="element_2_1" >Admit</label>
<input onClick="jarod();" id="element_2_2" name="element_2" class="element radio" type="radio" value="2" />
<label class="choice" for="element_2_2">Qualified Admission</label>
<input id="element_2_3" name="element_2" class="element radio" type="radio" value="3" />
<label class="choice" for="element_2_3">Deny</label>
<input id="element_2_4" name="element_2" class="element radio" type="radio" value="4" />
<label class="choice" for="element_2_4">Qualified Denial</label>
<input id="element_2_5" name="element_2" class="element radio" type="radio" value="5" />
<label class="choice" for="element_2_5">Legal Conclusion</label>
</span>
</li>
<li class="buttons">
<input type="hidden" name="form_id" value="601799" />
<input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" />
</li>
</ul>
</form>
ご覧のとおり、onclick="jarod();" があります。JavaScript 関数を呼び出そうとしています。onclick="jarod();" の場合、これは何もしません。入力タグセクションにありますが、次のようにラベルセクションに移動すると:
<label class="choice" for="element_2_1" onClick="jarod();">Admit</lable>
この「ラベル」は Chrome で問題なく機能します。適格な許可または適格な拒否が選択されている場合、これを使用してテキスト領域を表示します。
助けてくれてありがとう。
PS - onclick="jarod();" も入れてみました テキストフィールドに入力すると、Chrome で問題なく動作します。ラジオ ボタンと Chrome の関係は?
編集:これはイライラします。時間を節約するために、phpform.org を使用してフォームを作成しました。上部でこの DOCTYPE を使用します。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
これを使用する場合:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
それはうまく動作します。誰かがそれが XHTML / XML の形式であるとコメントしましたが、確かにそうです。少なくとも、解決策を見つけようとしてコンピューターの前に座る代わりに、最後の数時間は寝て過ごすことができました。
悪いことは、私の CSS が正しく見えないことです。プログラミングの問題よりもフォーマットの問題の方がいいと思います。
ジャロッド