Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript onchange事件在firefox中不起作用_Javascript_Html_Firefox - Fatal编程技术网

Javascript onchange事件在firefox中不起作用

Javascript onchange事件在firefox中不起作用,javascript,html,firefox,Javascript,Html,Firefox,在这段代码中,我有两个下拉列表。一个是部门,另一个是部门名称。在部门的基础上,我将相应地更改我的部门名称,然后将这两个下拉列表的值推送到表单的输入中 问题是,如果您只使用键盘(tab键和箭头键),onchange事件在chrome中运行良好,但在firefox中却无法运行。如何在不添加jquery的情况下修复此问题 函数字段(){ var seldprt=document.getElementById(“seldprt”);//seldprt代表部门 var section=seldpt.va

在这段代码中,我有两个下拉列表。一个是部门,另一个是部门名称。在部门的基础上,我将相应地更改我的部门名称,然后将这两个下拉列表的值推送到表单的输入中

问题是,如果您只使用键盘(tab键和箭头键),onchange事件在chrome中运行良好,但在firefox中却无法运行。如何在不添加jquery的情况下修复此问题

函数字段(){
var seldprt=document.getElementById(“seldprt”);//seldprt代表部门
var section=seldpt.value;//将Department下拉列表的值分配给section变量
var dprt_输入=区段;
var input_Department=document.getElementById(“departmentinput”);
输入部门。值=dprt\U输入;
如果(第节=“监管”)
{
document.getElementById(“LEGALDiv”).style.display=“无”;
document.getElementById(“REGDiv”).style.display=“”;
var subsection=document.getElementById(“REGDiv_子标记”);
var sub_catagory_input=分段值;
var input_subtagory=document.getElementById(“subtagoryInput”);
输入子类别。值=子类别输入;
}	
否则,如果(部分==“法律”)
{
document.getElementById(“LEGALDiv”).style.display=“”;
document.getElementById(“REGDiv”).style.display=“无”;
var subsection=document.getElementById(“LEGALDiv_子标签”);
var sub_catagory_input=分段值;
var input_subtagory=document.getElementById(“subtagoryInput”);
输入子类别。值=子类别输入;
}	
}

部门名称:
合法的
监管的
章节名称:
GLT
监管的
章节名称:
GLT
合法的
名称
章节号
好啊
取消
返回

onkeyup事件应该执行您试图执行的操作。它可能会产生很多事件,所以我会仔细考虑它是否真的有必要。我看到您在代码片段中尝试了onkeypress事件。出于我不知道的原因,至少在firefox中,它似乎没有捕捉到向上/向下箭头,而onkeyup和onkeydown显然是这样

函数字段(){
var seldprt=document.getElementById(“seldprt”);//seldprt代表部门
var section=seldpt.value;//将Department下拉列表的值分配给section变量
var dprt_输入=区段;
var input_Department=document.getElementById(“departmentinput”);
输入部门。值=dprt\U输入;
如果(第节=“监管”)
{
document.getElementById(“LEGALDiv”).style.display=“无”;
document.getElementById(“REGDiv”).style.display=“”;
var subsection=document.getElementById(“REGDiv_子标记”);
var sub_catagory_input=分段值;
var input_subtagory=document.getElementById(“subtagoryInput”);
输入子类别。值=子类别输入;
}	
否则,如果(部分==“法律”)
{
document.getElementById(“LEGALDiv”).style.display=“”;
document.getElementById(“REGDiv”).style.display=“无”;
var subsection=document.getElementById(“LEGALDiv_子标签”);
var sub_catagory_input=分段值;
var input_subtagory=document.getElementById(“subtagoryInput”);
输入子类别。值=子类别输入;
}	
}

部门名称:
合法的
监管的
章节名称:
GLT
监管的
章节名称:
GLT
合法的
名称
章节号
好啊
取消
返回

此代码段的工作原理与Firefox for me中所述的相同,更新文本输入以匹配选择框中选择的内容。你能为你验证一下Firefox中的代码片段是否被破坏了吗?如果你使用鼠标,它可以正常工作,但是当使用键盘(使用tab键和箭头键)时,它只在Firefox中不工作。啊,在Firefox中,onchange在框失去焦点之前不会被触发。那是他们有意的行为。看这里:有没有办法解决这个问题?