簡體   English   中英

表單文本輸入字段值不隨 javascript 改變

[英]form text Input field value not changing with javascript

問題很簡單,但讓我發瘋。 我正在嘗試使用帶有 tampermonkey 的 javascript 注入在現有網站上自動執行任務。 一切都運行良好,直到我嘗試以同時工作和不工作的形式更改某些輸入字段的值。

這是我要為其設置值的元素:

<input type="text" name="fighter">

這是我用來進行此更改的代碼:

document.querySelector("input[name='fighter']").value = 1;

奇怪的是,當我運行這段代碼時,我可以在文本輸入字段中直觀地看到一個 1 在此處輸入圖像描述 但是,如果我為此在表格上或頁面上的任何地方向前按,數字就會消失,並且該值將被視為空值。 就像什么都沒有發生一樣。
如果我只是將 cursor 放在輸入字段上並用我的鍵盤輸入它,它就可以正常工作。 例如,如果我在一個字段中鍵入 3,在另一個字段中使用 javascript 將值更改為 5(再次顯示輸入字段中的值),然后我在表單上按下一步,只有 3 被注冊與表單提交。
當使用帶有上面的選擇器的鍵盤寫入時,我可以從輸入字段中讀取值,它也可以正常工作。
如果我嘗試使用 the.focus() 方法,cursor 不會轉移到輸入字段中。

我在網上看了很多,似乎沒有發現同樣的問題。 如果有人有任何想法或需要更多信息,請告訴我。

我沒有發布網頁,因為這是一款需要帳戶和進度才能看到的游戲。

您應該嘗試設置表單字段的值而不是元素。 檢查這個https://www.javascript-coder.com/javascript-form/javascript-form-value/

我能夠解決這個問題。 我使用搜索關鍵字查看網頁的內置腳本,發現一個 function,其描述性名稱為“selectShips(id, amount)”,它將 ID 和船舶數量作為輸入。 我使用了它,輸入被更新和注冊,就好像我用鍵盤打字一樣。
我沒有足夠的 javascript 經驗來理解為什么這有效並且設置文本輸入字段的值沒有,但我想出於我作為愛好者的目的,我不需要知道..

暫無
暫無

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

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