6

我有这个 JavaScript 函数,我想将其转换为 jquery,但我无法理解 jquery。它使用document.getElementsByName了很多,所以我想知道如何将其转换document.getElementsByName为 jquery。

function getElements(name){
    if (document.getElementsByName(name)[0].className == "visible"){
        document.getElementsByName(name)[0].className = "hidden";
    } else {
        if(document.getElementsByClassName('visible')[0] != null){
            document.getElementsByClassName('visible')[0].className = "hidden";
        }
        document.getElementsByName(name)[0].className = "visible";
    }
}
4

4 回答 4

4

您可以尝试使用属性选择器...

 $('[name="'+name+'"]')  //for name selector
 $('.visible') //for class selector
于 2013-09-12T05:53:21.220 回答
3

您应该尝试,因为当您尝试练习时,您实际上正在学习:

  • document.getElementsByName在 jQuery 中$("[name=Name]");
  • document.getElementsById在 jQuery 中$("#IdofElement");
  • document.getElementsByClass在 jQuery 中$(".ClassofElement");

这里有一些教程:

  1. 初学者的 jQuery
  2. jQuery API
  3. jQuery 初学者指南
于 2013-09-12T05:55:32.003 回答
0

您可以参考以下语法以供参考。

$('[name=tcol1]') // matches exactly 'tcol1'

$('[name^=tcol]') // matches those that begin with 'tcol'
于 2013-09-12T05:52:41.323 回答
0

尝试这个。

function getElements(name1){
    if ($("[name='" + name1 + "'").hasClass("visible")){
        $("[name='" + name1 + "'").removeClass("visible").addClass("hidden");
    } else {
        if($(".visible") != null){
            $(".visible").addClass("hidden");
        }
        $("[name='" + name1 + "'").removeClass("visible").addClass("visible");
    }
}
于 2013-09-12T05:57:05.243 回答