Форма не будет правильно отправлена ​​в IE - PullRequest
3 голосов
/ 10 июня 2010

Моя простая форма пожертвования отправляется правильно, за исключением Internet Explorer. Я уверен, что это связано с проблемами с изменениями () и focus () или blur (), но все мои сотни попыток до сих пор провалились. Я попытался использовать .click () вместо change (), как упоминалось в этом посте: Получение jQuery для распознавания .change () в IE (и в других местах), но я не смог заставить его работать! ... так что я пропускаю что-то простое, возможно.

Вот ссылка на страницу: 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());
});

1 Ответ

0 голосов
/ 11 июня 2010

Используя один из ответов, приведенных в этом посте: Получение jQuery для распознавания .change () в IE - я изменил свой скрипт на следующий, и теперь он отлично работает !!

Новый скрипт, который работает!:

// 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());
});
...