我使用的 HTML 表單的輸入范圍為 1 到 20,并以 10 開頭。所以通常您可以單擊側面并向上直到 20 或向下到 1。這沒有任何問題,直到我更改了值帶有JS函數。該函數由列表觸發,并根據列表的值更新表單。舉個例子,出了什么問題:所有能力在開始時都設置為 10,如果我在列表中選擇 Dragonborn,它應該在 STR 處添加 +2,在 CHA 處添加 +1,如果我從列表中選擇任何其他條目,則能力是重置為默認值 10。我遇到的問題是,在我的示例中執行函數后,STR 設置為 12,但無法再手動將其更改為任何其他值,即使這些值可以是 1 到 20 之間的任何值。我無法單擊并將其更改為 13 或 11 或任何其他。它將跳回到該函數設置的12。我需要的是一切都像我現在一樣工作,但是當該值設置為 12 時,我可以隨后手動將其更改為任何其他值。我用來更新基本值的列表是種族,并且根據種族,默認值可以改變。但如果在我的示例中設置為 12,我需要能夠更改。<table class="table">? ? ? ? ? ? ? ? <tr>? ? ? ? ? ? ? ? ? ? <th>Ability</th>? ? ? ? ? ? ? ? ? ? <th>Score</th>? ? ? ? ? ? ? ? ? ??? ? ? ? ? ? ? ? </tr>? ? ? ? ? ? ? ? <tr>? ? ? ? ? ? ? ? ? ? <td>STR: <br>Modifier:? ? ? ? ? ? ? ? ? ? ? ? <td><input type="number" value="10" min="1" max="20" id="strScore" onchange="updateModifiers()">? ? ? ? ? ? ? ? ? ? ? ? ? ? <input type="number" value="0" id="strMod"></td>? ? ? ? ? ? ? ? </tr>? ? ? ? ? ? ? ? <tr>? ? ? ? ? ? ? ? ? ? <td>DEX: <br>Modifier:? ? ? ? ? ? ? ? ? ? ? ? <td><input type="number" value="10" min="1" max="20" id="dexScore" onchange="updateModifiers()">? ? ? ? ? ? ? ? ? ? ? ? ? ? <input type="number" value="0" id="dexMod"></td>? ? ? ? ? ? ? ? </tr>? ? ? ? ? ? ? ? <tr>? ? ? ? ? ? ? ? ? ? <td>CON: <br>Modifier:? ? ? ? ? ? ? ? ? ? ? ? <td><input type="number" value="10" min="1" max="20" id="conScore" onchange="updateModifiers()">? ? ? ? ? ? ? ? ? ? ? ? ? ? <input type="number" value="0" id="conMod"></td>? ? ? ? ? ? ? ? </tr>}
Javascript - 當函數設置時如何更改表單中的值
蝴蝶刀刀
2023-07-29 16:52:49