Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
拉菜單的屬性
length 表示選項(xiàng)<option>的個(gè)數(shù)
selected 布爾值,表示選項(xiàng)<option>是否被選中
SelectedIndex 被選中的選項(xiàng)序號(hào),如果沒(méi)有被選中則為-1,對(duì)于多選下拉菜單而言,返回被選中的第一個(gè)選項(xiàng)序號(hào)。從0開始計(jì)數(shù)
text 選項(xiàng)的文本(它是option專有的屬性)
value 選項(xiàng)的value值
type 下拉菜單的類型。單選返回select-one,多選返回select-multiple
options 獲取選項(xiàng)的數(shù)組,列如oSelectBox.options[2]表示下拉菜單oSelectBox中的第3項(xiàng)
訪問(wèn)選中項(xiàng)
下拉菜單(單選):
<html>
<head>
<title>下拉菜單,單選</title>
<style>
<!--
form{
padding:0px; margin:0px;
font:14px Arial;
}
-->
</style>
<script language="javascript">
function checkSingle(){
var oForm=document.forms["myForm1"];
var oSelectBox=oForm.constellation;
var iChoice=oSelectBox.selectedIndex; //獲取選中項(xiàng)
alert("您選中了" + oSelectBox.options[iChoice].text); //下拉菜單,單選
}
</script>
</head>
<body>
<form method="post" name="myForm1">
<label for="constellation">星座:</label>
<p>
<select id="constellation" name="constellation">
<option value="Aries" selected="selected">白羊</option>
<option value="Taurus">金牛</option>
<option value="Gemini">雙子</option>
<option value="Cancer">巨蟹</option>
<option value="Leo">獅子</option>
<option value="Virgo">處女</option>
<option value="Libra">天秤</option>
<option value="Scorpio">天蝎</option>
<option value="Sagittarius">射手</option>
<option value="Capricorn">摩羯</option>
<option value="Aquarius">水瓶</option>
<option value="Pisces">雙魚</option>
</select>
</p>
<input type="button" onclick="checkSingle()" value="查看選項(xiàng)" />
</form>
</body>
</html>
下拉菜單(多選):
<html>
<head>
<title>下拉菜單,多選</title>
<style>
<!--
form{
padding:0px; margin:0px;
font:14px Arial;
}
p{
margin:0px; padding:2px;
}
-->
</style>
<script language="javascript">
function checkMultiple(){
var oForm=document.forms["myForm1"];
var oSelectBox=oForm.constellation;
var aChoices=new Array();
//遍歷整個(gè)下拉菜單
for(var i=0;i<oSelectBox.options.length;i++)
if(oSelectBox.options[i].selected) //如果被選中
aChoices.push(oSelectBox.options[i].text); //壓入到數(shù)組中,可以用于單選的情況;
alert("您選了:" + aChoices.join()); //輸出結(jié)果
}
</script>
</head>
<body>
<form method="post" name="myForm1">
<label for="constellation">星座:</label>
<p>
<select id="constellation" name="constellation" multiple="multiple" style="height:180px;">
<option value="Aries">白羊</option>
<option value="Taurus">金牛</option>
<option value="Gemini">雙子</option>
<option value="Cancer">巨蟹</option>
<option value="Leo">獅子</option>
<option value="Virgo">處女</option>
<option value="Libra">天秤</option>
<option value="Scorpio">天蝎</option>
<option value="Sagittarius">射手</option>
<option value="Capricorn">摩羯</option>
<option value="Aquarius">水瓶</option>
<option value="Pisces">雙魚</option>
</select>
</p>
<input type="button" onclick="checkMultiple()" value="查看選項(xiàng)" />
</form>
</body>
</html>
通用的訪問(wèn)下拉菜單選中項(xiàng)的方法:
<script language="javascript">
function getSelectValue(Box){ //Box參數(shù)select標(biāo)簽的ID值
var oForm=document.forms["myForm1"];
var oSelectBox=oForm.elements[Box]; //根據(jù)參數(shù)相應(yīng)的選擇下拉菜單
if(oSelectBox.type=="select-one"){ //判斷是單選還是多選
var iChoice=oSelectBox.selectedIndex; //獲取選中項(xiàng)
alert("單選,您選中了" + oSelectBox.options[iChoice].text);
}else{
var aChoices=new Array();
//遍歷整個(gè)下拉菜單
for(var i=0;i<oSelectBox.options.length;i++)
if(oSelectBox.options[i].selected) //如果被選中
aChoices.push(oSelectBox.options[i].text); //壓入到數(shù)組中
alert("多選,您選了:" + aChoices.join()); //輸出結(jié)果
}
}
</script>
函數(shù)使用方法:
<select id="constellation1" name="constellation1">
<option value="Aries" selected="selected">白羊</option>
<option value="Taurus">金牛</option>
<option value="Gemini">雙子</option>
<option value="Cancer">巨蟹</option>
<option value="Leo">獅子</option>
<option value="Virgo">處女</option>
<option value="Libra">天秤</option>
<option value="Scorpio">天蝎</option>
<option value="Sagittarius">射手</option>
<option value="Capricorn">摩羯</option>
<option value="Aquarius">水瓶</option>
<option value="Pisces">雙魚</option>
</select>
<input type="button" onclick="getSelectValue('constellation1')" value="查看選項(xiàng)" />
添加、替換、刪除選項(xiàng)
通過(guò)構(gòu)造函數(shù)Option()直接添加value、text等信息,相當(dāng)方便
var oOption=new Option(text,value,defaultSelected,selected)
defaultSelected為布爾型值:1(true)設(shè)置下拉式表單默認(rèn)值,
selected為布爾值:1(true)表示被選中
最后兩項(xiàng)默認(rèn)值為0,如果不希望添加的選項(xiàng)被默認(rèn)選中則可以忽略,添加選項(xiàng)時(shí)通常將<select>列表的第length項(xiàng)直接設(shè)置為新的選項(xiàng),即在末尾增加。
添加選項(xiàng):
<html>
<head>
<title>添加選項(xiàng)</title>
<style>
<!--
form{padding:0px; margin:0px; font:14px Arial;}
p{margin:0px; padding:3px;}
input{margin:0px; border:1px solid #000000;}
-->
</style>
<script language="javascript">
function AddOption(Box){ //添加選項(xiàng),參數(shù)為<select>標(biāo)簽的ID值
var oForm=document.forms["myForm1"];
var oBox=oForm.elements[Box];
var oOption=new Option("乒乓球","Pingpang");
oBox.options[oBox.options.length]=oOption; //在菜單末尾添加選項(xiàng)
}
</script>
</head>
<body>
<form method="post" name="myForm1">
球類:
<p>
<select id="ball" name="ball" multiple="multiple">
<option value="Football">足球</option>
<option value="Basketball">籃球</option>
<option value="Volleyball">排球</option>
</select>
</p>
<input type="button" value="添加乒乓球" onclick="AddOption('ball');" />
</form>
</body>
</html>
替換選項(xiàng)
如果下拉菜單中的序號(hào)為已經(jīng)存在了的選項(xiàng),添加時(shí)則會(huì)自動(dòng)替換原有的選項(xiàng)
oBox.options[iNum]=oOption;//替換iNum個(gè)選項(xiàng)
<html>
<head>
<title>替換選項(xiàng)</title>
<style>
<!--
form{padding:0px; margin:0px; font:14px Arial;}
p{margin:0px; padding:3px;}
input{margin:0px; border:1px solid #000000;}
-->
</style>
<script language="javascript">
function ReplaceOption(Box,iNum){ //替換選項(xiàng),參數(shù)Box為<select>的ID值,iNum為替換的選項(xiàng)序號(hào);
var oForm=document.forms["myForm1"];
var oBox=oForm.elements[Box];
var oOption=new Option("乒乓球","Pingpang");
oBox.options[iNum]=oOption; //替換第iNum個(gè)選項(xiàng)
}
</script>
</head>
<body>
<form method="post" name="myForm1">
球類:
<p>
<select id="ball" name="ball" multiple="multiple">
<option value="Football">足球</option>
<option value="Basketball">籃球</option>
<option value="Volleyball">排球</option>
</select>
</p>
<input type="button" value="籃球替換為乒乓球" onclick="ReplaceOption('ball',1);" />
</form>
</body>
</html>
添加選項(xiàng)到具體位置
<html>
<head>
<title>添加到具體位置</title>
<style>
<!--
form{padding:0px; margin:0px; font:14px Arial;}
p{margin:0px; padding:3px;}
input{margin:0px; border:1px solid #000000;}
-->
</style>
<script language="javascript">
function AddOption(Box,iNum){
var oForm=document.forms["myForm1"];
var oBox=oForm.elements[Box];
var oOption=new Option("乒乓球","Pingpang");
oBox.insertBefore(oOption,oBox.options[iNum]);
}
</script>
</head>
<body>
<form method="post" name="myForm1">
球類:
<p>
<select id="ball" name="ball" multiple="multiple">
<option value="Football">足球</option>
<option value="Basketball">籃球</option>
<option value="Volleyball">排球</option>
</select>
</p>
<input type="button" value="添加乒乓球" onclick="AddOption('ball',1);" />
</form>
</body>
</html>
以上代碼IE7中雖然在正確的位置插入了選項(xiàng),但內(nèi)容卻沒(méi)有顯示出來(lái)(bug問(wèn)題)
兼容性更好的代碼,使用方法與以上相同;
<script language="javascript">
function AddOption(Box,iNum){
var oForm=document.forms["myForm1"];
var oBox=oForm.elements[Box];
var oOption=new Option("乒乓球","Pingpang");
//兼容IE7,先添加選項(xiàng)到最后,再移動(dòng)
oBox.options[oBox.options.length]=oOption;
oBox.insertBefore(oOption,oBox.options[iNum]);
}
</script>
注意:IE9已經(jīng)解決了bug問(wèn)題
刪除下拉菜單的選項(xiàng):
刪除下拉菜單中的某個(gè)選項(xiàng)時(shí)相對(duì)最簡(jiǎn)單的,只需要將這個(gè)選項(xiàng)設(shè)置為null即可
bBox.options[iNum]=null;
avaweb
在我們?nèi)粘5膉avaweb開發(fā)過(guò)程中呢,會(huì)經(jīng)常遇到獲取表單中的下拉菜單中的value以及他的text,下面我來(lái)教大家兩種方法。(推薦第二種哈~,希望大家多多評(píng)論點(diǎn)贊呀,上一篇文章中,各位猿媛光想著收藏,都看不到你們給我寫的評(píng)論,桑心~~)
假如我們的select長(zhǎng)這樣:
<select id="myselect">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>
第一種呢是用我們比較常見(jiàn)的JQuery
var $selected=$("#myselect option").filter(":selected");
獲取文本: $selected.text();
獲取value: $selected.val();
第二種呢當(dāng)然是我們的原生js啦~~(推薦喲,收藏評(píng)論哈~)
var e=document.getElementById("myselect");
獲取文本:var text=e.options[e.selectedIndex].text;
獲取value: e.value;
我在后續(xù)的文章中,會(huì)分享更多更實(shí)用的開發(fā)小技巧給大家,希望大家多多關(guān)注!
豬腳本(原飛豬腳本)以按鍵精靈教學(xué)為主,涉及UiBot,Python,Lua等腳本編程語(yǔ)言,教學(xué)包括全自動(dòng)辦公腳本,游戲輔助腳本,引流腳本,網(wǎng)頁(yè)腳本,安卓腳本,IOS腳本,注冊(cè)腳本,點(diǎn)贊腳本,閱讀腳本以及網(wǎng)賺腳本等各個(gè)領(lǐng)域。想學(xué)習(xí)按鍵精靈的朋友可以添加金豬腳本粉絲交流群:554127455 學(xué)習(xí)路上不再孤單,金豬腳本伴你一同成長(zhǎng).
1.什么是網(wǎng)頁(yè)元素特征字符串?
請(qǐng)參考網(wǎng)頁(yè)特征字符串詳解,
2.Html系列命令
2.1.HtmlSelect命令
1 HtmlSelect命令只能夠根據(jù)Select項(xiàng)的值來(lái)進(jìn)行選擇,注意這里不是顯示在Select項(xiàng)上的文字,而是該項(xiàng)的value。
一個(gè)典型的下拉框HTML代碼如下:
<select name="city">
<option value="1">北京</option>
<option value="2">上海</option>
<option value="3">廣州</option>
</select>
這里如果要選擇上海,需要選擇值為2的項(xiàng);
2)級(jí)聯(lián)的下拉列表組合。
在有的網(wǎng)頁(yè)中,會(huì)有幾個(gè)級(jí)聯(lián)的下拉列表,后一個(gè)下拉框會(huì)隨前一個(gè)框的值變化而發(fā)生變化,典型的有注冊(cè)頁(yè)面上的省份城市選擇,HtmlSelect命令能夠觸發(fā)Onchange事件,會(huì)導(dǎo)致后一個(gè)下拉框值發(fā)生變化,但是如果執(zhí)行腳本太快,而導(dǎo)致后一個(gè)未能選中正確的值,可以在前一個(gè)HtmlSelect后加上適當(dāng)?shù)难訒r(shí);
3)多選表單中的列表控件;有的列表支持多選,在有一些個(gè)求職網(wǎng)站中,職業(yè)是可以多選的,這時(shí)候可以用%將多個(gè)需要選擇的值連接起來(lái)傳遞給HtmlSelect命令實(shí)現(xiàn)多選;
2.2.HtmlExists命令
HtmlExists命令,能夠判斷指定特征的元素是否存在,并能夠返回具備該特征的元素的個(gè)數(shù)。這個(gè)命令能夠用來(lái)判斷某個(gè)元素是否存在,如果為0證明不存在;
2.3.HtmlGet命令
HtmlGet命令比較復(fù)雜,但是功能也非常強(qiáng)大,該命令具備兩個(gè)參數(shù),第一個(gè)參數(shù)為獲取類型,目前支持的值如下所示:
序號(hào) 值 適用對(duì)象
1 text 得到指定元素的文本值,對(duì)應(yīng)DOM屬性innerText
2 html 得到指定元素內(nèi)部的HTML代碼,對(duì)應(yīng)DOM屬性innerHTML
3 outerHtml 得到元素整體的HTML代碼,對(duì)應(yīng)DOM屬性的outerHTML
4 value 得到元素的Value值,用于獲取表單元素內(nèi)部的值
5 src 得到圖像元素的src屬性,用于IMG標(biāo)簽對(duì)象
6 href 得到鏈接元素的鏈接地址,用于A標(biāo)簽
7 …其他名稱 其他屬性,如果您使用的是合法的屬性名稱,就能夠返回對(duì)應(yīng)的值。如何才是合法的屬性?請(qǐng)參閱HTML標(biāo)準(zhǔn)。
第二個(gè)參數(shù)為特征字符串,如果匹配多個(gè),只能返回第一個(gè)元素的值;
例如,獲得淘寶貨物價(jià)格:
Plugin price=Web.HtmlGet("text","id:id_Price")
獲取某個(gè)表單文本的值
Plugin email=Web.HtmlGet("value","name:Email")
2.4.RunJS命令
RunJS命令提供了直接運(yùn)行Javascript的功能,如果您對(duì)JS非常熟悉,就能夠極大的擴(kuò)展WQM的功能。
RunJS命令支持兩中執(zhí)行方式,第一個(gè)參數(shù)設(shè)置為0時(shí),能夠執(zhí)行一段沒(méi)有返回值的Javascript,
例如:
RunJS(0,"alert('hello');")
第一個(gè)參數(shù)設(shè)置為1時(shí),能執(zhí)行一段js并返回由return語(yǔ)句返回的值,返回值為字符串類型;
例如:返回Html文檔的title;
RunJS(1,"var t=document.title;return t;")
如果您分析到網(wǎng)頁(yè)中某個(gè)按鈕實(shí)際上就是執(zhí)行了一個(gè)函數(shù),例如
<input type="Button" … />
您就可以直接調(diào)用
RunJS(0,"dosomething();")
JQuery的支持,網(wǎng)頁(yè)按鍵精靈集成了Jquery1.3.2,為了不與其他JQ的庫(kù)發(fā)生沖突,使用了wqmjq來(lái)代替$操作符,如果您需要直接使用JQ來(lái)操作網(wǎng)頁(yè),可使用wqmjq來(lái)執(zhí)行Jquery語(yǔ)句:
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。