如果x等于某事,那么就不要运行函数

时间:2013-03-22 17:48:49

标签: javascript html

我是JavaScript和HTML的新手。我在我的JavaScript文件中有这行代码:

if (q1 == '' && q2 == '' && q3 == '' && q4 == '' && q5 == '') {alert("You must enter a question");thisform.q1.focus();return false;}

基本上,q1 q2等是文本框,如果它们留空,会弹出一个警告并说你必须输入一个问题。在我的HTML文件中,我有这行代码

<script type="text/javascript">
function add() {
var num = document.getElementById("n1").value;
if(num == '') num = 0;
document.getElementById("n1").value = parseInt(num ,10) + 1; 
var num = document.getElementById("n2").value;
if(num == '') num = 0;
document.getElementById("n2").value = parseInt(num ,10) + 1;
var num = document.getElementById("n3").value;
if(num == '') num = 0;
document.getElementById("n3").value = parseInt(num ,10) + 1;
var num = document.getElementById("n4").value;
if(num == '') num = 0;
document.getElementById("n4").value = parseInt(num ,10) + 1;
var num = document.getElementById("n5").value;
if(num == '') num = 0;
document.getElementById("n5").value = parseInt(num ,10) + 1;
}
</script>

然后:

<INPUT onclick="addQ(myForm);add();" value="Add Question" id="question add" type=button>

如果弹出警报,有没有办法让add()函数不能执行?

1 个答案:

答案 0 :(得分:1)

你可以尝试

<INPUT onclick="if(!addQ(myForm)) {return false;} add();" value="Add Question" id="question add" type=button>

然后在函数return true;的末尾添加addQ()

function addQ(myForm){
    ....
    if (q1 == '' && q2 == '' && q3 == '' && q4 == '' && q5 == '') {alert("You must enter a question");thisform.q1.focus();return false;}
    ......
    .....
    return true;
}

<INPUT onclick="if(addQ(myForm) === false) {return false;} add();" value="Add Question" id="question add" type=button>