0

我找到了一个线程,Change an element's class with JavaScript,这与我的目标一致,但我不知道如何实现它。

我有一个带有 4 个输入按钮和两种 CSS 样式的页面:“Selected”和“notSelected”。一个按钮最初将被硬编码为“已选择”。当用户单击另一个按钮时,我想以编程方式遍历所有按钮(每页上的按钮数量在 2 到 10 个之间),将单击按钮的类设置为“已选择”,并确保所有其他按钮按钮设置为“notSelected”。

我已经搞定了逻辑,但我以前从未用 JavaScript 做过任何事情,所以我对如何做到这一点一无所知。如果有人知道已经有一个教程/一段代码可以做到这一点,请指出我正确的方向。

万分感谢!

4

3 回答 3

1

You can go the easy way and use a framework like jQuery that does the hard work for you

于 2010-06-22T21:45:47.310 回答
1

As you are new to JavaScript, this might be a bit much, but have you considered using jquery? Take a look at toggleClass(): http://api.jquery.com/toggleClass/

于 2010-06-22T21:47:14.530 回答
0

嗨刚刚做了一个快速脚本,希望对你有帮助。如果您发现脚本有任何问题,请告诉我。

我使用的是焦点事件和输入框,您可以根据需要进行更改。

函数 doSelect( obj ){ var mylist=document.getElementById("formDiv") var inputItems= mylist.getElementsByTagName("input"); for (i=0; i < inputItems.length; i++){ document.getElementById(inputItems[i].id).className = "Notselected"; } document.getElementById(obj.id).className = "selected"; }

在 div 标签 id="formDIV" 中有一个表单标签

很少有文本类型的输入标签和 onfocus="doSelect(this)"

<body> <div id="formDiv"> <form name="testform"> <input type="text" name="tx1" id="text1" onfocus="doSelect(this)"/> <input type= "text" name="tx2" id="text2" onfocus="doSelect(this)"/> <input type="text" name="tx3" id="text3" onfocus="doSelect(this)"/> <input type="text" name="tx4" id="text4" onfocus="doSelect(this)"/> <input type="text" name="tx5" id="text5" onfocus="doSelect(this )"/> </form> </div> </body>

这应该会有所帮助。

于 2010-06-22T22:10:07.700 回答