0

我试图隐藏表单上的提交按钮,直到使用 checkForm 按钮和 if 语句完成必填字段。我在让它工作时遇到问题,我一直在研究可能的答案,但我被困住了。我想知道是否有人可以看看我下面的代码并指出我正确的方向。

submit_btn.visible=false;
checkForm_btn.addEventListener(MouseEvent.CLICK, entryTest)
function entryTest():void{
arguments;
if (name_txt.text != "")
trace("name needs completing");
else if (email_txt.text != "")
trace("email needs completing");
else if (question_txt.text != "")
trace("question needs completing");
else submit_btn.visible=true;
}

这是我根据一些建议编辑的代码副本 - 但它仍然无法正常工作。我只收到第一个 if 语句的输出。

submit_btn.visible=false;
checkForm_btn.addEventListener(MouseEvent.CLICK, entryTest)
function entryTest(event:MouseEvent):void{
  if(name_txt.text != ""){
    trace("name needs completing");
  } else if(email_txt.text != ""){
    trace("email needs completing");
  } else if(question_txt.text != ""){
    trace("question needs completing");
  } else {
    submit_btn.visible = true
  }
}
4

1 回答 1

1

你有一个语法错误。

else (submit_btn.visible=true);

应该

else
  submit_btn.visible = true;

不过,为了完整起见,您的按钮事件处理程序应该声明所传递事件的预期数据类型......您可能会发现使用大括号{}来包装您的代码块应该有助于阐明什么是条件以及什么是满足该条件时执行的代码。(它还可以轻松添加/删除更多代码,而无需知道是否需要添加括号)

function entryTest(event:MouseEvent):void{
  if(name_txt.text == ""){
    trace("name needs completing");
  } else if(email_txt.text == ""){
    trace("email needs completing");
  } else if(question_txt.text == ""){
    trace("question needs completing");
  } else {
    submit_btn.visible = true;
  }
}
于 2013-05-31T17:17:06.673 回答