我设置了一个更改字段颜色的功能
HTML:
<input id="nameInput" type="text" onfocus="backColor();">
的javascript:
function backColor() {
document.getElementById("nameInput").style.backgroundColor = "yellow";
}
但后来我尝试制作不同的功能,包括参数并根据颜色改变颜色,但显然没有效果。我怎么做?
html:
<input id="nameInput" type="text" onfocus="backColor(nameInput, 'yellow');">
的javascript:
function backColor(id, color) {
var idInput = document.getElementById(id);
var color;
idInput.style.backgroundColor = color;
return;
}
答案 0 :(得分:0)
我想你可能只是遗漏了你身份证的一些引用:
<input id="nameInput" type="text" onfocus="backColor('nameInput', 'yellow');">
希望这有帮助
答案 1 :(得分:0)
如果ID
,则在传递名称时错过单引号
function backColor(id, color) {
var idInput = document.getElementById(id);
var color;
idInput.style.backgroundColor = color;
return;
}
<input id="nameInput" type="text" onfocus="backColor('nameInput', 'yellow');">
答案 2 :(得分:0)
你可以使用currying:
No instance for (memory-0.14.6:Data.ByteArray.Types.ByteArray LBS.ByteString) arising from a use of ‘ctrCombine’
所以你可以这样做:
function colorChooser(id, color){
const el = document.getElementById(id);
return function colorCallback(){
el.style.backgroundColor = color;
}
}