重要!:我必须使用 onclick 属性。在我的情况下,在事件侦听器/处理程序上使用 Jquery 不是一个选项。为什么?我的代码中有很多其他的东西取决于属性及其在代码中的表现形式。
将警报放入onclick
属性时,它按预期工作,警报显示在弹出窗口中并返回 false 可防止通过按下按钮提交表单:
<script>
$().ready(function() {
$('.pretty .prettycheckbox').click(function () {
var myType = $('.pretty .prettycheckbox').find("input[class^=car-type]:checked").val();
if (myType == 1) {
$('#sendButton').attr("onclick", "alert('Direct!'); return false;");
}
if (myType == 2) {
$('#sendButton').removeAttr("onclick");
}
});
});
</script>
但是从 onclick 属性调用函数时它不起作用,例如:
<script>
$().ready(function() {
$('.pretty .prettycheckbox').click(function () {
var myType = $('.pretty .prettycheckbox').find("input[class^=car-type]:checked").val();
if (myType == 1) {
$('#sendButton').attr("onclick", "submitDB(); return false;");
}
if (myType == 2) {
$('#sendButton').removeAttr("onclick");
}
});
});
</script>
<script>
$().ready(function(){
function submitDB() {
alert('From function!');
}
});
</script>
知道为什么吗?
为什么忽略该功能?