3

私の簡単な寄付フォームは、InternetExplorerを除いて適切に送信されます。change()とfocus()またはblur()の問題に関係していると確信していますが、これまでの何百回もの試みはすべて失敗しました。この投稿で説明されているように、change()の代わりに.click()を使用してみました:IE(および他の場所)で.change()をjQueryに認識させましたが、動作させることができませんでした!...だから私はおそらく単純な何かを見落としています。

このページへのリンクは次のとおりです:http ://www.wsda.org/donate

HTMLフォーム:

<form id="donationForm" method="post" action="https://wsda.foxycart.com/cart.php" class="foxycart">
<input type="hidden" id="name" name="name" value="Donation" />
<input type="hidden" id="price" name="price" value="10" />
<div class="row">
 <label for="price_select">How much would you like to donate?</label>
 <select id="price_select" name="price_select">  
                <option value="10">$10</option>
  <option value="20">$20</option>
  <option value="50">$50</option>
  <option value="100">$100</option>
  <option value="300">$300</option>
  <option value="0">Other</option>
 </select>
</div>
<div class="row" id="custom_amount">
 <label for="price_input">Please enter an amount: $</label>
 <input type="text" id="price_input" name="price_select" value="" />
</div>
<input type="submit" id="DonateBtn" value="Submit Donation »" />
</form>

JQUERY:

// donation form
$("#custom_amount").hide();
$("#price_select").change(function(){
   if ($("#price_select").val() == "0") {
      $("#custom_amount").show();
   } else {
      $("#custom_amount").hide();
   }
   $("#price").val($("#price_select").val());
});

$("#price_input").change(function(){
   $("#price").val($("#price_input").val());
});
4

1 に答える 1

0

この投稿から得られた回答の1つを使用して:jQueryにIEで.change()を認識させる-スクリプトを次のように修正しましたが、今ではうまく機能しています!!

動作する新しいスクリプト!:

// donation form
$("#custom_amount").hide();
$("#price_select").change(function(){
   if ($("#price_select").val() == "0") {
      $("#custom_amount").show();
   } else {
      $("#custom_amount").hide();
   }
   $("#price").val($("#price_select").val());
});

if ($.browser.msie) {
  $("#price_input").click(function() {
    this.blur();
    this.focus();
  });
};

$("#price_input").change(function(){
   $("#price").val($("#price_input").val());
});
于 2010-06-11T00:28:30.747 に答える