消防jQuery .on('更改')总是至少一次

时间:2017-03-08 10:43:34

标签: javascript jquery

我经常发现自己使用如下代码:

$('[name=myradio]').on('change', function(){

    if($(this).val() == 0){
        $('#div').toggle();
    }

    else if(....){
        $('#div2').toggle();
    }

    //...and more code going on
});

但是,我经常想要至少执行一次这些代码(例如验证失败时)!当然我可以创建这个代码的方法,然后在change匿名函数中执行该方法,以及在$(document).ready()方法中执行该方法,但我想知道是否有一种简单的方法来执行代码至少一次,但也只在更改方法中保留该代码,以保持一切美观和干净,而不是为只使用两次的东西制作方法。

2 个答案:

答案 0 :(得分:1)

您可以在$(document).ready(...)

中触发更改
$(document).ready(function() {
  $('[name=myradio]').on('change', function() {

    if ($(this).val() == 0) {
      $('#div').toggle();
    } else if (....) {
      $('#div2').toggle();
    }

    //...and more code going on
  }).trigger("change");
});

答案 1 :(得分:0)

使用trigger()方法。这样,您只需将代码保留在更改方法中,并从任何地方触发它。

request failed with server response:{"name":"DUPLICATE_REQUEST_ID","message":"PayPal-Request-Id header was already used.","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#DUPLICATE_REQUEST_ID","debug_id":"848e3db5def20"}