關(guān)于js獲取radio和select的屬性并控制的代碼
2、點(diǎn)擊“公開(kāi)群”, 自動(dòng)跳轉(zhuǎn):成員類(lèi)型“實(shí)名小組”
首先是獲得點(diǎn)擊radio的事件,用的是jquery庫(kù),獲得事件后判斷是那個(gè)radio,通過(guò)判斷是那個(gè)radio被checked了然后進(jìn)行聯(lián)動(dòng)變換。其中遇到的問(wèn)題有,兼容ie和firefox的事件,然后是設(shè)置select中的中options的selected屬性。
兼容ie和firefox用了var ie=document.all;var nn6=document.getElementById&&!document.all;
設(shè)置select中的中options的selected屬性用的是var t=document.getElementsByName("select1")[0][1]; t.setAttribute("selected","selected");
在設(shè)置selected屬性通常用的是document.getElementsByName("select1").options,但是firefox報(bào)undefined。于是遍歷后就用了一個(gè)數(shù)組解決了。
下面是實(shí)現(xiàn)了目標(biāo)1的完整代碼:
html
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="l.js"></script>
<p><label>成員類(lèi)型:</label>
<input type="radio" name="member_type" checked="checked" value='0'/>實(shí)名小組(使用姓名)
<input type="radio" name="member_type" value='1'/>匿名小組(使用昵稱(chēng))
</p>
<p><label>群組類(lèi)型:</label>
<input type="radio" name="search_type" checked="checked" value='1'/>公開(kāi)群
<input type="radio" name="search_type" value='0'/>私密群
</p>
<p><label>訪問(wèn)控制: </label>
<select class="select1" name="select1">
<option value="0">任何人</option>
<option value="1">群成員</option>
</select>
</p>
js
// JavaScript Document
var ie=document.all;
var nn6=document.getElementById&&!document.all;
$(document).ready(function(){
$(":radio").click(function(e){
var $name=(nn6?e.target.name:event.srcElement.name);
if($name == "member_type")
{
if(1 == GetRadioValue($name))
{
SetRadioCheck("search_type",1);
var t=document.getElementsByName("select1")[0][1];
t.setAttribute("selected","selected");
}
}
});
});
實(shí)現(xiàn)目標(biāo)2時(shí),遇到了SetRadioCheck中的setAttribute不好使了,調(diào)試了也不知道什么原因于是換了obj[i].checked = true;
實(shí)現(xiàn)功能1、2 js
// JavaScript Document
var ie=document.all;
var nn6=document.getElementById&&!document.all;
$(document).ready(function(){
/*點(diǎn)擊"匿名小組",自動(dòng)跳轉(zhuǎn):成員類(lèi)型"私密群"、訪問(wèn)控制 "群成員"*/
$(":radio").click(function(e){
var $name=(nn6?e.target.name:event.srcElement.name);
if($name == "member_type")
{
if(1 == GetRadioValue($name))
{
SetRadioCheck("search_type",1);
var t=document.getElementsByName("select1")[0][1];
t.setAttribute("selected","selected");
}
}
/*點(diǎn)擊"公開(kāi)群", 自動(dòng)跳轉(zhuǎn):成員類(lèi)型"實(shí)名小組"*/
if($name == "search_type")
{
if(1 == GetRadioValue($name))
{
SetRadioCheck("member_type",0);
}
}
});
});
/*獲得被check的radio的值
*RadioName:要獲得radio值的radio組名稱(chēng)
*/
function GetRadioValue(RadioName){
var obj;
obj=document.getElementsByName(RadioName);
if(obj!=null){
var i;
for(i=0;i<obj.length;i++){
if(obj[i].checked){
return obj[i].value;
}
}
}
return null;
}
/*設(shè)置被選中屬性
*RadioName:要修改屬性radio組的名稱(chēng)
*i:radio中第i個(gè)元素被選中
*/
function SetRadioCheck(RadioName,i){
var obj;
obj=document.getElementsByName(RadioName);
//obj[i].setAttribute("checked","checked");
obj[i].checked = true;
}
對(duì)于在第二次調(diào)用SetRadioCheck
if($name == "search_type")
{
if(1 == GetRadioValue($name))
{
SetRadioCheck("member_type",0);
}
}
obj[i].setAttribute("checked","checked")的失效,還請(qǐng)指教。
- javascript操作select參考代碼
- javascript Select標(biāo)記中options操作方法集合
- js select多選列表傳值代碼
- select下拉選擇框美化實(shí)現(xiàn)代碼(js+css+圖片)
- javascript之querySelector和querySelectorAll使用介紹
- js 操作select和option常用代碼整理
- jquery及原生js獲取select下拉框選中的值示例
- Js操作Select大全(取值、設(shè)置選中等等)
- js 觸發(fā)select onchange事件代碼
- javascript獲取select標(biāo)簽選中的值
相關(guān)文章
php對(duì)mongodb的擴(kuò)展(初識(shí)如故)
mongodb的數(shù)據(jù)存儲(chǔ)格式是一種由于MongoDB的文檔結(jié)構(gòu)為BJSON格式(BJSON全稱(chēng):Binary JSON),而B(niǎo)JSON格式本身就支持保存二進(jìn)制格式的數(shù)據(jù),因此可以把文件的二進(jìn)制格式的數(shù)據(jù)直接保存到MongoDB的文檔結(jié)構(gòu)中2012-11-11解決layui調(diào)用自定義方法提示未定義的問(wèn)題
今天小編就為大家分享一篇解決layui調(diào)用自定義方法提示未定義的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09bootstrap實(shí)現(xiàn)彈窗和拖動(dòng)效果
這篇文章主要介紹了bootstrap實(shí)現(xiàn)彈窗和拖動(dòng)效果的相關(guān)資料,需要的朋友可以參考下2016-01-01fabric.js實(shí)現(xiàn)diy明信片功能
這篇文章主要為大家詳細(xì)介紹了fabric.js實(shí)現(xiàn)diy明信片功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03javascript如何使用函數(shù)random來(lái)實(shí)現(xiàn)課堂隨機(jī)點(diǎn)名方法詳解
這篇文章主要介紹了javascript如何使用函數(shù)random來(lái)實(shí)現(xiàn)課堂隨機(jī)點(diǎn)名方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07