Sudoku项目无法将级别分配给按钮

时间:2020-09-23 09:15:49

标签: javascript html css

我在这个问题上停留了大约5个小时,我试图将多个级别分配给Sudoku网格(一个网格用于3个不同级别)。

但是它不起作用,无论它给我第一个功能的结果是什么,我的意思是我为每个级别编写了带有功能的代码-宝贝,不是那么难,噩梦 给了一个特定功能中的任何一个,但只有一个起作用,我给了所有这些功能相同的功能,但是不管我在做什么,它都会选择第一个。

HTML编码-

<form method="get" action="./bord.html"> 
  <button onclick="baby()" id="level_1" value="1">Baby</button> 
</form> 
<form method="get" action="./bord.html"> 
  <button onclick="notSoHard()" id= "level_2" type="submit" value="2">Not so 
     hard
  </button> 
</form> 
<form method="get" action="./bord.html"> 
   <button onclick="nightmare()" id= "level_3" type="submit" 
     value="3">Nightmare
   </button> 
</form> 
var level =0
function baby(level){ 
    end()  
    var level = 30
    return level
}

function notSoHard(level){
    end()
 var level = 50
 return level
}notSoHard(level)

function nightmare(level){
    end()
     var level =70
     return level
}nightmare(level)

function end(){
    // debugger
 if (baby(level) == 30){
     return 30;
 }if(notSoHard(level) == 50){
     return 50;
 } if(nightmare(level) == 70){
     return 70;
 }
}
console.log(end())

我需要控制台上的结果是我选择的结果(30,50,70) 它给了我30个。

上帝保佑你

1 个答案:

答案 0 :(得分:0)

这样怎么样:

function end(event) {
  event.preventDefault();

  const value = parseInt(event.currentTarget.value);

  var level = 0;

  if(value === 1) {
    level = 30;
  } else if (value === 2) {
    level = 50;
  } else if (value === 3) {
    level = 70;
  };

  console.log(level);

  //Add anything else you want to do with the level here

  return level;
};
<form method="get" action="./bord.html">
    <button onclick="end(event)" id="level_1" value="1">Baby</button>
</form>
<form method="get" action="./bord.html">
    <button onclick="end(event)" id= "level_2" type="submit" value="2">Not so hard</button>
</form>
<form method="get" action="./bord.html">
    <button onclick="end(event)" id= "level_3" type="submit" value="3">Nightmare</button>
</form> 

您只需要一个函数即可获取值。这里,按钮(1、2或3)的value属性用于定义要应用的级别。您可以改为将参数传递给end函数以区分按钮。

上面的代码在我尝试时会进入堆栈溢出,因为这些函数以递归方式相互调用。最好保持简单:)