Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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
Onchange中的HTML/Javascript addEventListener Onchange事件?_Javascript_Html_Onchange - Fatal编程技术网

Onchange中的HTML/Javascript addEventListener Onchange事件?

Onchange中的HTML/Javascript addEventListener Onchange事件?,javascript,html,onchange,Javascript,Html,Onchange,所以我已经为此工作了大约一天了。。。我有一个表单,其中有一个选择菜单,它的选择会触发另一个相关的选择菜单 我现在要做的是根据第二个选择菜单中的选择填写一个默认值。基本上,如果用户在人工菜单中选择“操作员”选项,则费率值应预先填充该职位的每日费率——比如说$100 到目前为止,我已经成功地为函数的第一部分添加了一个事件监听器,并且表单在该选择上进行了很好的调整,但是我不知道如何获得要填充的速率。我在寻找类似情况时没有任何运气,我尝试了很多我认为有效的方法,也就是说,到目前为止,我已经找到了nuth

所以我已经为此工作了大约一天了。。。我有一个表单,其中有一个选择菜单,它的选择会触发另一个相关的选择菜单

我现在要做的是根据第二个选择菜单中的选择填写一个默认值。基本上,如果用户在人工菜单中选择“操作员”选项,则费率值应预先填充该职位的每日费率——比如说$100

到目前为止,我已经成功地为函数的第一部分添加了一个事件监听器,并且表单在该选择上进行了很好的调整,但是我不知道如何获得要填充的速率。我在寻找类似情况时没有任何运气,我尝试了很多我认为有效的方法,也就是说,到目前为止,我已经找到了nuthin but错误

这是我目前拥有的,显然不起作用:


document.getElementById('MAIN')。addEventListener('change',function(){
var style=this.value==0?'inline':'none';
document.getElementById('Labor').style.display=style;
模糊();
//document.getElementById('sup').style.display=style;
var style=this.value==1?'inline':'none';
document.getElementById('mateq').style.display=style;
var style=this.value==2?'inline':'none';
document.getElementById('equipment').style.display=style;
var style=this.value==3?'inline':'none';
document.getElementById('subq').style.display=style;
});
函数blur(){
document.getElementById('laborchoices')。addEventListener('onblur',function(){
var rate=this.value==laborchoices0?'inline':'none';
document.getElementById('value')='165';
var rate=this.value==laborchoices1?'inline':'none';
document.getElementById('value')='95';
var rate=this.value==laborchoices2?'inline':'none';
document.getElementById('value')='85';
}

劳动
材料与设备
装备
分包商
监督人
操作人员
装配工


数量:EA

MH/单位: 总MH:

费率:$ 总计:$

评论:

数量:EA

MH/单位: 总MH:

费率:$ 总计:$

评论:

数量:EA

MH/单位: 总MH:

费率:$ 总计:$

评论: 站立 光束 垫子 其他

天: 数量:

$/单位: 总计:$

说明:

天: 数量:

$/单位: 总计:$

说明:

天: 数量:

$/单位: 总计:$

说明:

天: 数量:

$/单位: 总计:$

说明: 拖车 其他

天: 数量:

$/单位: 总计:$

说明:

天: 数量:

$/单位: 总计:$

说明: 每日津贴 其他

数量:EA

费率: 总计:$

说明:

数量:EA

费率: 总计:$

说明:
因此,我建议使用数组结构
SelStruct

id=“T&M”无效=>更改为id=“T-M” 在其他地方,一些Id不是唯一的,所以我更改了它们

const
MainSelect=document.getElementById('MAIN'),
SelStruct=[
{ref:“人工”,subs:['sup','opr','rig']},
{ref:“mateq”,subs:[‘支架’、‘横梁’、‘垫子’、‘其他mateq’],
{ref:“装备”,subs:[‘拖车’,‘其他装备’]},
{ref:“subq”,subs:['perdiem','othersubq']}
]
;
函数SetSelectMain()
{
让ref_Select=MainSelect.selectedIndex;
对于(设i=0;i试试这个

if(document.getElementById('MAIN')。值==0)
document.getElementById('rate1')。值='165';//设置值如果未选择任何选项,这是默认值。
document.getElementById('MAIN')。addEventListener('change',function(){
var style=this.value==0?'inline':'none';
document.getElementById('Labor').style.display=style;
var style=this.value==1?'inline':'none';
document.getElementById('mateq').style.display=style;
var style=this.value==2?'inline':'none';
document.getElementById('equipment').style.display=style;
var style=this.value==3?'inline':'none';
document.getElementById('subq').style.display=style;
});
//第二个下拉菜单更改事件而不是onblur,并且不要在函数中包装事件
document.getElementById('laborchoices')。addEventListener('change',function(){
//如果必须从多个选项中选择一个,请使用switch语句;
开关(此值){
案例“laborchoices0”:
document.getElementById('rate1')。值='165';
document.getElementById('sup').style.display='block';
document.getElementById('opr').style.display='none';
document.getElementById('rig').style.display='none';
打破
案例“实验室选择1”:
document.getElementById('rate2')。值='95';
document.getElementById('sup').style.display='none';
document.getElementById('opr').style.display='block';
document.getEle