Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.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 有人能简化这个JS代码吗?_Javascript_Jquery - Fatal编程技术网

Javascript 有人能简化这个JS代码吗?

Javascript 有人能简化这个JS代码吗?,javascript,jquery,Javascript,Jquery,将其简化为ELSE-IF或Case语句或任何可以使其更简单的语句。谢谢 $(function() { $('#Class').change(function() { $('#YearLevel,#Dept,#Course,#SY,#Section,#Subject,#appointment').val(''); this.form.submit(); }); }); $(function() { $('#YearLevel').cha

将其简化为ELSE-IF或Case语句或任何可以使其更简单的语句。谢谢

   $(function() {
    $('#Class').change(function() { 
     $('#YearLevel,#Dept,#Course,#SY,#Section,#Subject,#appointment').val('');
      this.form.submit();
    });
});

   $(function() {
    $('#YearLevel').change(function() { 
     $('#Dept,#Course,#SY,#Section,#Subject,#appointment').val('');
      this.form.submit();
    });
});

   $(function() {
    $('#Dept').change(function() {  
     $('#Course,#SY,#Section,#Subject,#appointment').val('');
      this.form.submit();
    });
});

 etc...

试试这个。它应该做你想做的

var t = '#Class,#YearLevel,#Dept,#Course,#SY,#Section,#Subject,#appointment'

$(function() {
  $(t).change(function() {
    var id = "#" + this.id;
    var s = t.split(id);
    s = s[1].match("^,") == null ? s[1] : s[1].substring(1, s[1].length)
    $(s).val('');
    //this.form.submit();
  });
});
演示

var t='#班级#年级#部门#课程#SY#部门#科目#预约#
$(函数(){
$(t).更改(函数(){
var id=“#”+this.id;
var s=t.分割(id);
s=s[1]。匹配(“^,”)==null?s[1]:s[1]。子字符串(1,s[1]。长度)
美元(s).val(“”);
//这个.form.submit();
});
});

因为根据您的注释,文档中有一个隐含的顺序,所以您可以简单地给每个元素一个公共类,然后选择这些元素来绑定相同的处理程序

在处理程序中,从接收事件的元素后的元素开始获取元素的子片段,并使用该子片段设置值

$(函数(){
var elems=$(“.myClass”).change(函数(){
元素切片($.inArray(this,elems)+1).val(“”);
//这个.form.submit();
});
});


这不是一个“为我做”的平台。你必须表明你在哪里做了尝试,而不仅仅是要求别人去做。考虑使用多个选择器查看jQuery站点。这个代码看起来很简单。到底是什么问题?除了将所有事件处理程序分配包装在一个
$(function(){
..
})中之外,您无法做很多事情来简化它
由于每个ID列表的值设置为
”减少了一项,这是否意味着文档中有一个顺序?如果是这样,那将有助于简化$(function(){IF…ELSE IF…}哦,太棒了!@JaromandaX为这句好话欢呼如果你在任命时启动变更处理程序,那么很可能会中断,
var id=“#”+$(this.attr(“id”)+,“
var id=this.id
:p-你甚至可以
$(t.split('.'.'.''.'+this.id+'))[1]).val(“”);
为了让布伦丹·艾奇哭泣:p@James,jQuery非常宽容,所以它可能不会:p