比如這個網站http://mobile.yangkeduo.com/login.html
給手機號那個input執行js賦值document.getElementById('user-mobile').value='https://bbs.csdn.net/topics/15888888888';
然后再手動觸發各種事件blur,change等,都沒有效果
發送按鈕一直是灰色,而且通過查看表元素,并沒有真正修改value的值,請教大家什么原因,該怎么實作呢?
uj5u.com熱心網友回復:
人家表格是onchange 事件,是在你輸入的同時去改變狀態的,直接賦值肯定是沒用, onChange監聽input 框是否有值,有值就把按鈕的 disable去掉,沒值就自動加上disable 變成灰色uj5u.com熱心網友回復:
我已經用js觸發了blur,change等事件,還是無效,
uj5u.com熱心網友回復:
拼多多的技術這么牛逼嗎,csdn沒大佬能明白?uj5u.com熱心網友回復:
你自己是如何寫的,通過blur和change事件要改變 獲取驗證碼里面的 disabled屬性就可以var a = document.getElementById('code-button');
a.disabled = false ;
自然顏色就顯示出來
自己多試試吧就知道,要不就把你的代碼貼出來,你是怎么做的,做不出來別人可以指點你,你說你已經觸發了并不代表你的是對的,把代碼放出來看看有什么問題
uj5u.com熱心網友回復:
感謝你的回復,你這個方法試過了,不行啊,全部代碼如下
document.getElementById('user-mobile').value='https://bbs.csdn.net/topics/15888888888';
var evt = document.createEvent('HTMLEvents'); evt.initEvent('blur', true, true); document.getElementById('user-mobile').dispatchEvent(evt);
var evt = document.createEvent('HTMLEvents'); evt.initEvent('change', true, true); document.getElementById('user-mobile').dispatchEvent(evt);
var evt = document.createEvent('HTMLEvents'); evt.initEvent('input', true, true); document.getElementById('user-mobile').dispatchEvent(evt);
var a = document.getElementById('code-button');
a.disabled = false ;
你看下吧,網址是
http://mobile.yangkeduo.com/login.html
雖然顏色變了,但是點擊不了
uj5u.com熱心網友回復:

這個按鈕點不了可能跟校驗有關系,輸入號碼監聽有關, 當你輸入不滿足條件的時候出來提示,滿足條件的時候他會附帶一些其他引數一起,如果不滿足條件就不允許請求,跟我們平時請求一樣,一個表格點擊編輯修改資料,還要附帶這條資料的id,如果判斷,沒有這個id就不發請求
uj5u.com熱心網友回復:
問題是你手動輸入就沒問題,輸入個1就能點
uj5u.com熱心網友回復:
輸入1能點做校驗啊,只有有值都給你點,手機號基本位數校驗,到達11號請求后端也會有手機號校驗,輸入1點擊校驗不成功沒有發請求,輸入滿11位數可以發請求 ,但是后端會校驗,你不用去糾結他能不能點不點,他就是一個校驗而已,滿足條件的情況下 給你生成一些資料放在一個物件里面,才允許提交,你自己手動丟上去的并未觸發他生成的資料內容,所以點擊沒效果
uj5u.com熱心網友回復:
我的意思就是怎么弄:才能讓js自動模擬輸入手機提交。這個js代碼該怎么寫呢
uj5u.com熱心網友回復:
也就是說,如何js怎么寫,才能觸發他那個校驗uj5u.com熱心網友回復:
這么難啊這么難啊這么難啊這么難啊轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/133882.html
標籤:JavaScript
下一篇:初學者js
