簡體   English   中英

小 jQuery function 殺死 Infusionsoft 訂單上的其他功能

[英]Small jQuery function kills other functions on Infusionsoft order form

我是一個總jQuery新手。 我正在嘗試修改 Infusionsoft 訂單表格,以在數量輸入框中添加最小值。 使用訂單,您不能修改頁面上的任何實際代碼(它是自動生成的),但您可以將自己的腳本添加到頁腳。

我發現這是為輸入字段添加最大和最小數量:

<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
  $(document).ready(function() {
    $(".qtyField").attr({
       "max" : 100,
       "min" : 15  
    });
     });
</script>

它有效,但如果我單擊更新按鈕更新總價(基於選擇的數量),我會在控制台中看到此錯誤:

Uncaught TypeError: Infusion.Ecomm.OrderForms.ajaxSubmitForm is not a function
    at <anonymous>:1:27

...所以我猜測添加腳本源會覆蓋他們正在使用的任何內容。 但同樣,我對 jQuery 幾乎一無所知。

訂單在這里: https://mb931.infusionsoft.app/app/orderForms/ASR-For-Business-Single-License

更新:我能夠讓它使用這段代碼:

<script type="text/javascript">
jQuery(document).ready(function(){
  jQuery("input[name=qty_1]").attr({
       "max" : 100,
       "min" : 15  
    });
});
</script>

這正確設置了最小數量,如果我增加它並點擊更新,數量就會正確更新。 但是,在我點擊更新后,如果我降低數量,最小值不再存在,我可以 go 低於 15。

這是有效的:

<script type="text/javascript">
  function updateQuantity(){
    jQuery("input[name=qty_1]").attr('max', 100);
    jQuery("input[name=qty_1]").attr('min', 15);
  }
jQuery(document).ready(function(){
  updateQuantity();
  jQuery(document).bind('DOMNodeInserted',updateQuantity);
});
</script>

編輯

我看到你的編輯...

我似乎在單擊“更新”后替換了<input>

嘗試設置超時以在“更新”單擊后也執行 function:

<script type="text/javascript">

function setMinMax(){
  jQuery("input[name=qty_1]").attr({
       "max" : 100,
       "min" : 15  
    });
}

jQuery(document).ready(function(){
  setMinMax();
  
  jquery(".updateCart").on("click", function(){
    setTimeout(function(){
      setMinMax();
    },500)
  })
  
});
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM