最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS實現(xiàn)問卷星自動填問卷腳本并在兩秒自動提交功能

 更新時間:2020年06月17日 11:44:32   作者:playboy307  
這篇文章主要介紹了JS實現(xiàn)問卷星自動填問卷腳本兩秒自動提交功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

腳本只使用問卷星,多選題目前為選中任意選項數(shù)量?。。。。。?!

最近看到很多群里都在發(fā)問卷連接,各種求幫忙,正好這兩天沒任務(wù),嘗試寫了自動填問卷的腳本,類似的腳本網(wǎng)上已經(jīng)有了,但是后來問卷星加了驗證,并且多選題已經(jīng)不能適用

腳本使用方式(以Firefox為例):

一:鼠標(biāo)移動到瀏覽器地址欄下空白處,右鍵,新建書簽

二:填寫名稱(任意),代碼復(fù)制到地址欄中

三:打開問卷星連接,然后點擊剛剛添加的書簽,即可。

代碼:

javascript: void ( 
 (function () { 
 var hash = {}; 
 var a = document.evaluate('//input[(@type="radio") and not(@value="0")]//@name', 
   document, 
   null, 
   XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, 
   null); 
 if (a.snapshotLength){ 
 for (var i = 0; i < a.snapshotLength; i++) { 
 if (!(a.snapshotItem(i).value in hash)) 
 hash[a.snapshotItem(i).value] = 0; 
 hash[a.snapshotItem(i).value]++; 
 } 
 for (i in hash) { 
 document.evaluate('//input[(@type="radio") and not(@value="0") and @name="' + i + '"]', 
   document, 
   null, 
   XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, 
   null).snapshotItem(Math.floor(Math.random() * hash[i])).click(); 
 } 
 } 
 var array = new Array(); 
 var as = document.getElementsByTagName("a"); 
 var preName = ""; 
 var change = false; 
 for(var i=0; i < as.length; i++){ 
 if(as[i].getAttribute("rel") != null && as[i].nextSibling.getAttribute("type") == "checkbox"){ 
 var name = as[i].nextSibling.getAttribute("name"); 
 var check = as[i].nextSibling.getAttribute("checked"); 
 if(check == "checked"){ 
  as[i].click(); 
 } 
 if(preName == "" || preName == name){ 
  if(Math.random() * 10 > 5){ 
  as[i].click(); 
  change = true; 
  } 
 } 
 var next = as[i + 1]; 
 if(next.getAttribute("rel") != null && next.nextSibling.getAttribute("type") == "checked" && next.getAttribute("name") != name){ 
  if(!change){ 
  as[i].click(); 
  } 
  change = false; 
 } 
 if(i == as.length - 1 && !change){ 
  as[i].click(); 
 } 
 preName = name; 
 } 
 } 
 var objs = document.getElementsByTagName("textarea"); 
 for (var i = 0; i < objs.length; i++){ 
 objs[i].focus(); 
 objs[i].value = "最好的意見就是沒有意見,哈哈哈哈哈哈哈"; 
 objs[i].blur(); 
 } 
 var choose = document.getElementsByTagName("select"); 
 for (var i = 0; i < choose.length; i++) { 
 choose[i].focus(); 
 choose[i].value = "1"; 
 choose[i].blur(); 
 } 
 })()); 
function validate(){return true;} 
var btn = document.getElementById("submit_button"); 
window.setTimeout(btn.click(),2000); 

之前問卷星的前端加入了一個隱藏的選擇題,如果直接遍歷頁面上的input標(biāo)簽,會把這道題一起做了,然后validate函數(shù)執(zhí)行的時候會報錯,提示非法填問卷?。。。?/p>

下面是問卷星的js代碼

if (J[0].checked || J[1].checked) { 
 alert('系統(tǒng)檢測到非法填寫問卷'); 
 window.location.href = window.location.href; 
 return; 
} 

這里我直接屏蔽了驗證函數(shù)

單選題直接用XPath查找填寫,random生成隨機數(shù)選擇選項

對于多選題,使用的是a標(biāo)簽與input綁定的方式,似乎是優(yōu)化過的,因為之前網(wǎng)上流傳的腳本都填不了多選了,這里我直接取出頁面中所有的a標(biāo)簽,如果當(dāng)前的a標(biāo)簽有rel屬性,并且下一個兄弟標(biāo)簽的type是checked,則認(rèn)定當(dāng)前標(biāo)簽為一個多選的選項
問卷星頁面的命名的一些規(guī)則,input的name為q+對應(yīng)的題目編號,多選題是a標(biāo)簽跟input綁定,使用的是rel屬性,rel命名規(guī)則是:q+對應(yīng)的題目編號+選項編號

<li style="width:99%;"> 
<a href="javascript:" rel="external nofollow" class="jqCheckbox" rel="q2_2"></a> 
<input style="display:none;" id="q2_2" name="q2" value="2" type="checkbox"> 
<label>選項8</label> 
</li> 

文本框是固定文字的。

總結(jié)

以上所述是小編給大家介紹的JS實現(xiàn)問卷星自動填問卷腳本兩秒自動提交功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • javascript實現(xiàn)的全國省市縣無刷新多級關(guān)聯(lián)菜單效果代碼

    javascript實現(xiàn)的全國省市縣無刷新多級關(guān)聯(lián)菜單效果代碼

    這篇文章主要介紹了javascript實現(xiàn)的全國省市縣無刷新多級關(guān)聯(lián)菜單效果代碼,涉及javascript針對頁面元素的遍歷與屬性的動態(tài)操作技巧,需要的朋友可以參考下
    2016-08-08
  • JS中l(wèi)et的基本用法舉例

    JS中l(wèi)et的基本用法舉例

    ES6新增了let命令,用來聲明變量,它的用法類似于var,但是所聲明的變量,只在let命令所在的代碼塊內(nèi)有效,下面這篇文章主要給大家介紹了關(guān)于JS中l(wèi)et的基本用法,需要的朋友可以參考下
    2023-01-01
  • JS完整獲取IE瀏覽器信息包括類型、版本、語言等等

    JS完整獲取IE瀏覽器信息包括類型、版本、語言等等

    這篇文章主要介紹了JS如何完整獲取IE瀏覽器信息包括類型、版本、語言等等,需要的朋友可以參考下
    2014-05-05
  • js獲取當(dāng)前日期昨天、今天、明天日期的不同方法總結(jié)

    js獲取當(dāng)前日期昨天、今天、明天日期的不同方法總結(jié)

    JS中處理日期時間常用Date對象,下面這篇文章主要給大家介紹了關(guān)于利用js獲取當(dāng)前日期昨天、今天、明天日期的不同方法,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • 5個最佳的Javascript日期處理類庫分享

    5個最佳的Javascript日期處理類庫分享

    在大家日常網(wǎng)站開發(fā)和web應(yīng)用開發(fā)中,我們往往需要有效的調(diào)用Javascript處理日期和時間格式相關(guān)的函數(shù),在Javascript中已經(jīng)包含了部分最基本的內(nèi)建處理方法
    2012-04-04
  • JavaScript 瀏覽器兼容性總結(jié)及常用瀏覽器兼容性分析

    JavaScript 瀏覽器兼容性總結(jié)及常用瀏覽器兼容性分析

    本文是腳本之家小編日常整理些關(guān)于js兼容性問題,及IE與Firefox等常用瀏覽器的兼容性分析,對js瀏覽器兼容性相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧
    2016-03-03
  • Javascript如何實現(xiàn)對象扁平化實例詳解

    Javascript如何實現(xiàn)對象扁平化實例詳解

    這篇文章主要給大家介紹了關(guān)于Javascript如何實現(xiàn)對象扁平化的扁平化處理簡而言之就是對對象中的對象提取出來,放在一個對象里面,形象的說就是把兒子的后代當(dāng)成自己的兒子,下面相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • eslint+prettier統(tǒng)一代碼風(fēng)格的實現(xiàn)方法

    eslint+prettier統(tǒng)一代碼風(fēng)格的實現(xiàn)方法

    這篇文章主要介紹了eslint+prettier 統(tǒng)一代碼風(fēng)格的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • JavaScript中的細(xì)節(jié)分析

    JavaScript中的細(xì)節(jié)分析

    高山登不上,不是因為體力不支,只因鞋里一粒。學(xué)習(xí)也是如此,因而有必要把JavaScript中常見的和與其它語言不同的那些細(xì)節(jié)學(xué)習(xí)一下
    2012-06-06
  • JavaScript Image對象實現(xiàn)原理實例解析

    JavaScript Image對象實現(xiàn)原理實例解析

    這篇文章主要介紹了JavaScript Image對象實現(xiàn)原理實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08

最新評論

昌平区| 杨浦区| 扎囊县| 庆阳市| 牙克石市| 尖扎县| 繁昌县| 赫章县| 瓦房店市| 聂荣县| 竹北市| 阳高县| 同江市| 垦利县| 中山市| 赤壁市| 潼南县| 礼泉县| 镇巴县| 六枝特区| 哈巴河县| 新乐市| 富蕴县| 白水县| 江陵县| 上杭县| 吉水县| 新蔡县| 安岳县| 建始县| 瑞昌市| 边坝县| 通辽市| 府谷县| 大同县| 邓州市| 金华市| 汉沽区| 崇左市| 涡阳县| 吐鲁番市|