问题
Key press event is not working in Mozilla Firefox. I have create a table row dynamically with a text boix in it and that text box has a key press event too.
var el = document.createElement('input');
el.type = 'text';
el.name = 'suggest2';
el.setAttribute("id",str2);
el.setAttribute("onkeypress","additemifenter(this.id)");
cell2.appendChild(el);
row.appendChild(cell2);
In google chrome the function additemifenter(this.id) is called. But in firefox that function is not getting executed. What is the alternate way to do this in firefox?
回答1:
Maybe the semicolon at the end would help
el.setAttribute("onkeypress","additemifenter(this.id);");
but
why don't you use the standard event handling model:
el.onkeypress = function(event){
// functionality
};
or
el.addEventListener("keypress",function(event){
// functionality
},false);
to check the keycode you must use the code:
var code = (event.keyCode) ? event.keyCode : event.which;
if(code == 13){
}
来源:https://stackoverflow.com/questions/6235689/key-press-event-is-not-working-in-mozilla-firefox