簡體   English   中英

TypeError:undefined不是構造函數Phantomjs

[英]TypeError: undefined is not a constructor Phantomjs

我正在使用

document.querySelector("input[name='txtID']").value = "myid";
         document.querySelector("input[name='txtUserName']").value = "myname";
         document.querySelector("input[name='txtPassword']").value = "mypassword";
         document.querySelector("input[name='txtMode']").value = "1";
         document.querySelector("input[name='txtLang']").value = "en";
         document.querySelector("input[name='submit']").submit();

但是我收到一個錯誤TypeError:未定義不是構造函數(評估'document.querySelector(“ input [name ='submit']”“))。

這是HTML代碼:

<div id="myTabContent" class="tab-content">
                <div class="set-loginbx-active" id="b2b">
                    <form name="form1" method="post" onSubmit="return HC.checkMode(this);">
                        <div id="lyAgent">
                            <div class="lbl-login" id="dAgentID">Agent Id.</div>
                            <div class="inp-login"><input name="txtID" id="txtID" type="text"></div>
                            <div class="clear"></div>
                        </div>                        
                        <div class="lbl-login" id="dUserName">Username</div>
                        <div class="inp-login"><input name="txtUserName" id="txtUserName" type="text"></div>
                        <div class="clear"></div>
                        <div class="lbl-login" id="dPassword">Password</div>
                        <div class="inp-login">
                            <input name="txtPassword" id="txtPassword" type="password">
                            <input type="hidden" name="txtMode" id="txtMode" value="1" />
                            <input type="hidden" name="txtLang" id="txtLang" value="en" />
                        </div>
                        <div class="clear"></div>
                        <div class="btn-login"><input name="submit" type="submit" value="LOGIN" /></div>
                        <div class="box-access">
                            <div class="tt-access">Access Level</div>
                            <div class="lnk-access"><input type="radio" name="optionsRadios" id="optionsRadios1" onclick="HC.loginMode(1);"> Master Login</div>
                            <div class="lnk-access"><input type="radio" name="optionsRadios" id="optionsRadios2" checked onclick="HC.loginMode(0);"> Agent Login</div>
                        </div>       
                    </form>
                </div>

有人可以向我解釋為什么嗎?

問題是您不能在<input>上調用Submit()。 這是<form> 改為這樣做

document.querySelector("form[name='form1']").submit();

編輯:您不應有任何名稱為“提交”的元素。 在您的HTML中,您的提交輸入也具有提交名稱。 <input>元素中刪除name='submit'屬性。

那應該是:

document.querySelector("input[name=submit]").click()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM