jQuery之$('#id')和$('#'+id)

时间:2022-06-28 17:39:07

  最近在项目中使用$('#id')时,发现拿到的元素怎么都是空元素,(前提是id是作为变量),纠结了好一阵,使用fire bug也调试了半天终于发现原来$('#id')是使用整体来匹配,即查找id 为id的那个元素,而我的需求是通过函数传过来的变量值来查找相应的“id”,最后经过调试发现这样写便大功告成,即$('#'+id)即人为的拼接成相应的参数,这样,id便可以是变量了,详见以下代码:

  

  出错代码:                           变量

  function changeSelectText(selectId,value,newText){
    $('#selectId').find("option").each(function(i){
    if($(this).val()===value){
          $(this).text(newText);
     }
      });
     }

  纠正后的代码:

  function changeSelectText(selectId,value,newText){
    $('#'+selectId).find("option").each(function(i){
     if($(this).val()===value){
      $(this).text(newText);
     }
    });
   }

  以上的小的问题,今后一定要多加小心为妙