我有一些努力让这个工作。 我有一个按钮,我希望它执行Javascript函数A,并且在该函数A中,我想将Onclick更改为函数B.因此当用户点击按钮时获得结果,它是第二次,它是执行B.使用
<Button onclick="A();">Click me</button>
<script>
Function A() {
document.getElementById("button").onclick=B();
}
Function B() {
Alert("hello world");
}
在功能A()中,它不会执行FIRST A,在B之后,它会立即执行B.任何人都可以帮助我吗?谢谢:))
答案 0 :(得分:1)
您正在使用B()
致电B.
使用document.getElementById("button").onclick=B;
。请注意B
之后没有括号。
答案 1 :(得分:0)
您可以使用Jquery更改按钮的任何属性。下面,我将onclick
属性更新为执行函数B()
function A() {
$('#toggler').attr('onclick', 'B()');
}
function B() {
console.log('Updated to B()!');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="toggler" onclick="A()">Click me!</button>
答案 2 :(得分:0)
使用id
代替onclick
代替button
,然后从javascript
定位,如下所示:
function b()
{
console.log('I am in B.')
}
function a()
{
console.log('I am inside A.');
button1.removeEventListener('click', a);
button1.addEventListener('click', b);
}
var button1 = document.getElementById('button1'); // get the button element
button1.addEventListener('click',a); // assigns a click listener to a() at the beginning
&#13;
<Button id="button1">Click me</button>
&#13;
答案 3 :(得分:0)
使用括号编写函数名时,如B()
,立即调用函数。相反,您需要将onclick
设置为函数的名称A
或B
。
您的整体解决方案可能如下所示:
function A(event) {
// Function logic...
event.target.onclick = B;
}
function B() {
// Function logic...
}
document.getElementById("button").onclick = A;