Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.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
Jquery 将“this”标识符绑定到元素的函数_Jquery_This - Fatal编程技术网

Jquery 将“this”标识符绑定到元素的函数

Jquery 将“this”标识符绑定到元素的函数,jquery,this,Jquery,This,使用jquery时,在html元素中使用此标识符时遇到问题 预期结果: 每当我从下拉列表中选择语言选项时,它都必须进行验证。我还从下拉列表中选择了一个级别 要实现这一点,我需要将“.LanguageBlock”转换为this选择器 尝试: 我的尝试是使用儿童和父母,我相信它会起作用,但我有这个选择器的问题 我想我还必须使用。每个都和这个选择器相结合 HTML 这样怎么样: $('#submit').bind('click', function(){ $('.LanguageBlock').e

使用jquery时,在html元素中使用此标识符时遇到问题

预期结果:

每当我从下拉列表中选择语言选项时,它都必须进行验证。我还从下拉列表中选择了一个级别

要实现这一点,我需要将“.LanguageBlock”转换为this选择器

尝试:

我的尝试是使用儿童和父母,我相信它会起作用,但我有这个选择器的问题

我想我还必须使用。每个都和这个选择器相结合

HTML


这样怎么样:

$('#submit').bind('click', function(){
  $('.LanguageBlock').each(function() {
     var Language =  $(this).find('.Language option:selected').val();    
     var Level = $(this).find('.Level option:selected').val();

    if(Language!='Select' && Level=='Select'){
        Validator = 0;
    }

    if (Validator==0){
        alert('Must select a level for the current language you selected');
        return false;
    }

   });
  });

“提交”按钮看起来并没有任何子项,也没有匹配的父项,因此您的所有假设都是错误的。感谢您重复@adeneo我编辑了我的问题。我需要使用的“This”选择器是。LanguageBlock我想我可以使用each函数来实现这一点为什么要定义这样的变量?在JavaScript程序员眼中,它们持有对类的引用。因此,我可以对未定义的“.LanguageBlock”元素@undefined进行验证。是的,它们必须持有对类的引用!您知道,类语言和类级别必须关联才能进行验证。我可以使用parent.languageBlock将它们关联起来,我不是指className/class属性。我指的是JavaScript类。当然,您可以自由定义标识符!这也是一个关键字,不是选择器。非常感谢你,伙计@布莱恩·艾略特这正是我所需要的。我只是做了一些调整,代码运行得非常好。太棒了!很高兴我能帮忙!:
var Validator = 1;
$('#submit').bind('click', function(){
  var Language =  $('.LanguageBlock').children('.Language').val();    
  var Level = $('.LanguageBlock').children('.Level').val();  

    if(Language!='' && Level==''){
        Validator = 0;
    }

    if (Validator==0){
        alert('Must select a level for the current language you selected');
        return false;
    }

});
$('#submit').bind('click', function(){
  $('.LanguageBlock').each(function() {
     var Language =  $(this).find('.Language option:selected').val();    
     var Level = $(this).find('.Level option:selected').val();

    if(Language!='Select' && Level=='Select'){
        Validator = 0;
    }

    if (Validator==0){
        alert('Must select a level for the current language you selected');
        return false;
    }

   });
  });