私はこのフォームを持っています。ページが表示されると、最初のオプションが選択されたように見えますが、送信しても何も起こりませんでした。オプション 2 または 3 に変更してからオプション 1 に戻ると、送信を押すとページがリダイレクトされます。
この小さな「バグ」を修正する方法についての提案
<form method="post" action=javascript:action; >
<select class="price" onChange="this.form.action=this.options[this.selectedIndex].value;">
<option selected="selected" value="cart.php?a=add&pid=72">Kr. 999.00,- årlig</option>
<option value="cart.php?a=add&pid=73">Kr. 999.00,- toårig</option>
<option value="cart.php?a=add&pid=74">Kr. 999.00,- treårig</option>
</select>
<input type="submit" value="Bestill" class="buy-now" />
これで、このコードが下に表示されましたが、新しい cart.php ページにリダイレクトされません。
完全なコードは次のとおりです。jquery はヘッダー ファイルに読み込まれます。
<script type="text/javascript">
$(document).ready(function(){
$("#cmbPrice").change(function(){
fnChangeFormAction();
});
fnChangeFormAction();
});
function fnChangeFormAction(){
var action = $("#cmbPrice").val();
$("#frmMyForm").attr("action", action);
}
</script>
<form method="post" name="frmMyForm" id="frmMyForm" action='' >
<select class="price" name="cmbPrice" id="cmbPrice">
<option selected="selected" value="cart.php?a=add&pid=72">Kr. 700.00,- årlig</option>
<option value="cart.php?a=add&pid=73">Kr. 1400.00,- toårig</option>
<option value="cart.php?a=add&pid=74">Kr. 1800.00,- treårig</option>
</select>
<input type="submit" value="Bestill" class="buy-now" />