HELLP,
我正在为我的网页开发一个在线捐赠网站。我希望用户有一个带有付款选项的下拉框($ 5,$ 10,$ 20,Other)。如果选择“其他”选项,我目前已将其设置为显示输入框的位置;如果选择了另一个选项($ 5,$ 10,$ 20),则隐藏输入框。此外,捐款通过pay-pal进行,我已将Pay-Pal捐赠按钮/ php纳入网站。我遇到了以下问题:因为输入框是填充捐赠金额的字段,Pay-Pal无法识别下拉金额。例如,如果我选择“其他”选项,请在输入框中输入$ 100,然后从下拉框中选择“$ 10”选项(让我们假设我改变主意并想捐出10美元而不是100美元),然后点击捐赠按钮,Pay-Pal处理100美元而不是10美元的付款(因为它从输入框中拉出来)。
我相信我有一个修复,但我不一定确定如何编码。我正在寻求以下帮助:当用户从下拉框中选择一个选项时,我希望此操作使用相应的值填充(隐藏)输入框。类似地,如果用户从下拉列表中选择“其他”选项,我希望输入框(现在可见)填充“”,因为用户将填充此选项他/她自己。
同样,我不确定如何编写这样的代码,我希望有人可以指出我正确的方向。我真的非常感谢任何帮助,我非常感谢你的时间。谢谢!
编辑:谢谢你的帮助。这是我现在的代码:
<select name="amount" id="otherFieldOption" class="dropdown">
<option value="20">$20</option>
<option value="10">$10</option>
<option value="5" selected="selected">$5</option>
<option value="otherField">Other</option>
</select>
<div id="otherField">
Amount:
<input type="text" id="amount" name="amount" class="textfield" size="10"/>
</div>
jquery代码:
$(document).ready(function() {
$.viewInput = {
'0' : $([]),
//THIS IS THE NAME OF THE DIV WRAPPING THE HIDDEN FIELD
'otherField' : $('#otherField'),
};
$('#otherFieldOption').change(function() {
// HIDES THE INPUT FIELD IF ANOTHER DROPDOWN ITEM IS SELECTED ONCE THE HIDDEN FIELD IS LOADED
$.each($.viewInput, function() { this.hide(); });
// SHOWS THE INPUT FIELD ITEM IF SELECTED
$.viewInput[$(this).val()].show();
});
});
答案 0 :(得分:4)
这是一个demo
<select id="choice">
<option value="10">10</option>
<option value="20">20</option>
<option value="50">50</option>
<option value="other">other</option>
</select>
<input type='text' id="other" class="hidden" />
和jquery一起去
$('#choice').change(function(){
var selected_item = $(this).val()
if(selected_item == "other"){
$('#other').val("").removeClass('hidden');
}else{
$('#other').val(selected_item).addClass('hidden');
}
});
答案 1 :(得分:0)
当用户点击选择框时,清除文本框。
试试这个:
<select id="moneySelect" onchange="$('#moneyText').val(''); $('#sendValue').val(this.value);">
<option value="10">10</option>
<option value="20">20</option>
<option value="50">50</option>
</select>
<input type='text' id="moneyText" onkeypress="$('#sendValue').val(this.value)">
<input type="hidden" name="sendValue" id="sendValue" />
答案 2 :(得分:0)
<label>Donetion:</label>
<input list="browsers" name="myBrowser" placeholder="Donetion" />
<datalist id="browsers">
<option value="$5">
<option value="$15">
</datalist>