gpt4 book ai didi

javascript - onchange原型(prototype)函数调用

转载 作者:行者123 更新时间:2023-12-03 06:12:08 28 4
gpt4 key购买 nike

文件a.js

function a(){}
a.prototype.z=function(){console.log('z')};
a.prototype.b=function(){
var elementHtml='<select
onchange="/* what to fill here to make a call to a.prototype.z */
"><option value="1">call z</option>';
};

文件b.js

var qw= new a();
/* call to function */
document.querySelector("#somediv").innerHTML=qw.b();

我需要从 a.b 内部调用 a.z。这种设计是否可能实现这一点,或者我应该使用其他声明/设计??。

最佳答案

我假设您想调用 z()qw对象而不是直接a.prototype.z() .

您的代码不起作用,因为 var elementHtml='<...'只是创建一个字符串变量而不是 DOM 元素本身。

最简单的是,附加字符串,查询 select元素,然后使用 addEventListener() 将事件监听器绑定(bind)到它。 .

function a(){}
a.prototype.z=function(){console.log('z')};
a.prototype.b=function(){
var elementHtml='<select><option value="1">select</option><option value="2">call z</option>';
return elementHtml;
};

var qw= new a();
/* call to function */

var div = document.querySelector("#somediv");
div.innerHTML = qw.b();

console.log(div.querySelector('select'));
div.querySelector('select').addEventListener('change', qw.z);
<div id="somediv"></div>

关于javascript - onchange原型(prototype)函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39273870/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com