Onchange原型函数调用
onchange protoype function call
file 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>';
};
文件研究var qw= new a();
/* call to function */
document.querySelector("#somediv").innerHTML=qw.b();
我需要从A.B.内部调用a.z
我假设你想在qw
对象上调用z()
,而不是直接调用a.prototype.z()
。
你的代码不工作,因为var elementHtml='<...'
只是创建一个字符串变量,而不是DOM元素本身。
所以最容易的是,附加字符串,查询select
元素,然后用addEventListener()
绑定一个事件侦听器。
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>
可以使用a.prototype.z()
调用
function a(){}
a.prototype.z=function(){console.log('z')};
a.prototype.b=function(){
var elementHtml='<select onchange="a.prototype.z()"><option value="1">call z</option><option value="2">call b</option>';
return elementHtml; // need to return it
};
var qw= new a();
document.querySelector("#somediv").innerHTML=qw.b();
JSFIDDLE
相关文章:
- 使用setInterval调用原型函数时出现问题
- 从同一原型和上下文中的另一个函数调用函数
- Javascript原型继承原型函数调用
- JavaScript–从另一个原型函数调用原型的一个函数
- JavaScript 原型函数调用
- 通过引用调用原型函数时,类会丢失“this”作用域
- 调用原型函数的元素是什么
- 从继承对象的函数调用原型的方法
- 调用原型的函数
- 通过按钮点击调用原型函数不起作用
- 从原型函数调用函数
- HTML5/webcomponents:从模板代码调用原型函数
- 当原型函数调用javascript中的常规函数时会发生什么?
- 为什么通过setTimeout调用原型函数时会丢失实例信息?
- Onchange原型函数调用
- 从其他原型调用原型中的函数
- 调用原型中列出的函数
- 如何在同一对象中调用原型函数
- 从另一个调用函数的原型,通过单击 html 元素调用
- Javascript 在构造函数中调用原型函数