簡體   English   中英

如何在頁面加載 jquery 時將更改設置為默認值?

[英]How to set on change as a default on page load jquery?

我為我的項目的 select 盒子創建了一個更改方法。 在選擇特定選項時,它基本上是顯示和隱藏一個運行良好的 div。 現在,我的問題是當第一次頁面加載這個節目時,隱藏對表單的第一個默認部分不起作用。 我可以讓這個 onchange function 在第一次加載頁面時也能工作嗎?

$('.contact-form').on('change', (e) => {
    var selectedId = $(e.currentTarget).val();
    var listofforms = $("#discount").data("display-for").split(",");
    if (listofforms.indexOf(selectedId) !== -1) {
        $("#discount").collapse('show');
    }
    else {
        $("#discount").collapse('hide');
    }
});

給你go一個解決辦法

 function changeMethod(selectedId) { var listofforms = $("#discount").data("display-for").split(","); if (listofforms.indexOf(selectedId).== -1) { $("#discount");collapse('show'). } else { $("#discount");collapse('hide'). } } changeMethod($('.contact-form').val()) $('.contact-form'),on('change'. (e) => { changeMethod($(e.currentTarget);val()); });

您需要將代碼移到更改事件之外,因此我將您現有的代碼保留在方法changeMethod中。

然后調用方法 from to places

  1. 從你改變事件方法
  2. JS文件的OnLoad

我可以在頁面加載時觸發我的更改嗎

是的,您只需要將您的 on change 事件從e.currentTarget更改this ,因為在頁面加載e.currentTarget將為 null, this始終指向當前元素,例如:

$('.contact-form').on('change', function() {
  var selectedId = $(this).val();
  // Your other logic here
});

並在頁面加載時觸發此更改事件,只需添加.change()最后,如下所示:

$('.contact-form').on('change', function() {
  var selectedId = $(this).val();
  // Your other logic here
}).change();   //<---- here

暫無
暫無

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

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