私はjavascript/jQueryのこのスニペットを書いてチェックボックスを変更しました。 http://jsfiddle.net/johnhoffman/crF93/動的にチェックボックスを変更すると、フォーム変更イベントが発生しないのはなぜですか?
Javascriptを
$(function() {
$("a").click(function() {
if ($("input[type='checkbox']").attr('checked') == "checked")
$("input[type='checkbox']").removeAttr('checked');
else
$("input[type='checkbox']").attr('checked', 'checked');
return false;
});
$("input[type='checkbox']").change(function(){
console.log("Checkbox changed.");
});
});
HTML
<input type="checkbox" />
<a href="#">Change CheckBox</a>
は興味深いことに、リンクをクリックすると、テキストボックスを変更しますが、Chromeでメッセージをログに記録機能を呼び出すフォーム変更イベントをトリガすることはありませんWeb Developer Console。どうして?それをどうすればいいのですか?
[コントロールが入力フォーカスを失って、その値が後に変更されたときに「変更イベントが発生(http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-htmlevents)フォーカスの変更は変更イベントを意味しません。 –
可能性のある重複[onchangeイベントは、antoher関数からの変更が発生したときに発生しません](http:// stackoverflow。com/questions/7055729/onchange-event-not-fire-on-the-antoher-functionからの変更) –