我有一个表格,可以根据用户选择的会员级别来收取付款。当他们选择级别时,JS 会自动填写表格上的金额。我还想做的是readonly
在他们选择一个选项后将该字段标记为。但是有一个问题!有一个输入自定义金额的选项(我设置了最低金额)。如果选择了此选项,那么我希望单独保留金额字段以允许用户输入他们的金额。
readonly
除非他们选择自定义金额,否则我如何让该字段自动填充并标记为?
这是我的 HTML 和 JS(注意:我只显示涉及的两个字段的 HTML,而不是整个表单。)
HTML
<!-- MEMBERSHIP SELECT -->
<div><label for="CAT_Custom_320540">Membership Level <span class="req">*</span></label></div>
<select class="cat_dropdown" id="CAT_Custom_320540" name="CAT_Custom_320540">
<option value=" ">-- Please select --</option>
<option value="20.00">Basic $20</option>
<option value="35.00">Regular $35</option>
<option value="50.00">Advocate $50</option>
<option value="100.00">Dedicated $100</option>
<option value="250.00">Big Time $250</option>
<option value="3500.00">Lifetime $3500</option>
<option value="">Custom Amount</option>
</select>
<!-- AMOUNT -->
<div><label for="Amount">Amount<span class="req">*</span> <span id="constraint-300-label"> (minimum: <span id="constraint-300">20.00</span>)</span></label></div>
<input name="Amount" type="text" class="cat_textbox" id="Amount" />
JS
var select = document.getElementById('CAT_Custom_320540');
var input = document.getElementById('Amount');
select.onchange = function() {
input.value = select.value;
}
如您所见,我已自动填充了“金额”字段,但我不知道如何标记为只读,并且如果选择了“自定义金额”,则无法将该字段保留为只读。
我在网站上使用 jQuery 1.8.3 并且愿意使用 jQuery 是为了做我对 vanilla JS 所做的事情。