Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Uncaught ReferenceError: function is not defined at HTMLInputElement.onclick? (https://javascript.ru/forum/jquery/75181-uncaught-referenceerror-function-not-defined-htmlinputelement-onclick.html)

рони 11.09.2018 11:42

Цитата:

Сообщение от рони
параметры оставить в инпуте типа data-calc="['Квартира',0]"

кавычки строго как в коде data-calc='["Квартира",0]'
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
  jQuery.noConflict();
(function( $ ) {
    $(function() {

              function getInputCalc1(f1, f2, step) {
                alert([f1, f2]);

              /*  $('#w-size-1').attr('checked', false);
                var f1Val = $('#' + f1).val();
                var f2Val = $('#' + f2).val();
                var rezult = 'Размеры: (ширина=' + f1Val + ' мм, высота=' + f2Val + ' мм)';
                rezCalc1[step + 1] = rezult;
                $('#rez1').val(rezCalc1.join(', '));
                return false;*/
              }
    $("[data-calc]").on('click', function() {
    var data = $(this).data("calc");
    getInputCalc1.apply(null, data)
});


});
  })(jQuery);


</script>

</head>

<body>


<ul class="step-list">
   <li><input type="radio" class="radio" name="w-type" id="w-t-1" data-calc='["Квартира",0]'><label for="w-t-1">Другое</label></li>
   <li>..</li>
   <li>..</li>
</ul>


</body>
</html>

giwuf 11.09.2018 12:45

Благодарю, рони
И у меня к вам еще последний вопросс подключением сторонних библиотек: почему webuiPopover через обертку подключается и функционирует нормально, а formatter точно также нет?..

(function( $ ) {
                  $(function() {
                                      $('.pseudo-link-popover').webuiPopover({
    'trigger': 'hover',
    'width': '240',
    'placement': 'auto',
    content: function() {
      return $('#' + $(this).attr('data-src')).html();
    }
  });

$('.promo_phone_class').formatter({
    'pattern': '+7({{999}}){{999}}-{{99}}-{{99}}',
    'persistent': false
  });

              });
              })(jQuery);

рони 11.09.2018 12:50

giwuf,
нет элемента, на момент срабатывания строки 12

рони 11.09.2018 12:57

giwuf,
возможно так ...
(function($) {
    $(function() {
        $(".pseudo-link-popover").webuiPopover({
            "trigger": "hover",
            "width": "240",
            "placement": "auto",
            content: function() {
                return $("#" + $(this).attr("data-src")).html()
            },
            onShow: function(el) {
                $(".promo_phone_class", el).formatter({
                    "pattern": "+7({{999}}){{999}}-{{99}}-{{99}}",
                    "persistent": false
                })
            }
        })
    })
})(jQuery);

giwuf 11.09.2018 12:58

Цитата:

Сообщение от рони (Сообщение 494413)
giwuf,
нет элемента, на момент срабатывания строки 12

Спасибо, но если я функцию помещаю внуть ready и оборачиваю в jQuery(function($) { }); чтобы не выбивало ошибку $ - снова получаю ошибку

jQuery(document).ready(function() {

jQuery(function($) {
                            $('.promo_phone_class').formatter({
    'pattern': '+7({{999}}){{999}}-{{99}}-{{99}}',
    'persistent': false
  });
});

});


И вот так ошибка:
Uncaught TypeError: jQuery(...).formatter is not a function

jQuery(document).ready(function() {
jQuery('.promo_phone_class').formatter({
    'pattern': '+7({{999}}){{999}}-{{99}}-{{99}}',
    'persistent': false
  });
});

рони 11.09.2018 13:24

giwuf,
без примера, можно только гадать

giwuf 11.09.2018 13:47

Цитата:

Сообщение от рони (Сообщение 494418)
giwuf,
без примера, можно только гадать

рони,
ccылка на пример

рони 11.09.2018 13:57

giwuf,
1 загрузить jquery один раз
2 загрузить все все все плагины jquery
3 загрузить скрипты
4 загрузить bootstrap.min.js"

рони 11.09.2018 13:59

giwuf,
поставьте это сразу после jquery
<script src="https://likemedia.by/wp-content/themes/subway-child/jquery.formatter.min.js"  ></script>

giwuf 11.09.2018 14:23

Цитата:

Сообщение от рони (Сообщение 494426)
giwuf,
поставьте это сразу после jquery
<script src="https://likemedia.by/wp-content/themes/subway-child/jquery.formatter.min.js"  ></script>

рони,
поставил, но результато это не принесло..


Часовой пояс GMT +3, время: 15:19.