首页 > 解决方案 > 作为参数传递的函数未被调用

问题描述

我有一个按钮,单击该按钮时会接收作为参数传递的函数,并且传递的函数也是使用 JavaScript 创建的另一个函数的参数。我面临的挑战是没有调用传递的函数。

function alerts(x) {
  document.getElementById('dialogfoot').innerHTML = '<button onclick="submit(\'' + x + '\')">Yes</button>';
}

function submit(x) {
  x();
}

function callthis() {
  alert('welcome call me');
}
<button onclick="alerts(callthis)">submit</button>
<div id="dialogfoot" style=""></div>

标签: javascripthtml

解决方案


您传递的是字符串'callthis'submit1不是函数callthis

function alerts(x){
    document.getElementById('dialogfoot').innerHTML='<button onclick="submit1('+x+')">Yes</button>';
}

function submit1(x){
    x();
}
function callthis(){
    alert('welcome call me');
}
<button onclick="alerts(callthis)" id='btn'>submit</button>
<div id="dialogfoot" style=""></div>


推荐阅读