Функция возвращает функцию uncaught Reference onclick

1

Когда я нажимаю кнопку подтверждения, появляется сообщение о том, что неперехваченная ошибка ссылки (значение идентификатора) не определена. Я не думаю, что это относится к функции, так как console.log() не работает.

  <script  type="text/javascript">

  $(document).ready( function () {
  var table = $('#example').DataTable();
   var rootRef =
   firebase.database().ref().child("Users").orderByChild('status')
  .equalTo('Tmp');
     rootRef.on("child_added",snap => {
     var email= snap.child("email").val();
     var address= snap.child("address").val();
     var contact= snap.child("contact").val();
     var ids=snap.key;

    var dataSet = [snap.child("fullname").val(), snap.child("email").val(),         
    snap.child("address").val(), snap.child("contact").val(), "<button
    class='btn btn-success' onclick='approve("+ids+")'>Approve</button>"];
     table.rows.add([dataSet]).draw();
     console.log(ids);   
      });     
    } );

      function approve(para){
      console.log("hi");   
      console.log(para); 
      }   

    </script>
  • 1
    Ваши snap.child строк в и после строки строки SyntaxError вызовут SyntaxError
  • 0
    Вы не показываете значение ids , но выполнение onclick='approve("+ids+")' безусловно, неверно. Также неясно, почему вы делаете это в первую очередь, так как approve напрямую считывает ids из глобальной области и полностью игнорирует аргумент, который он передает.
Показать ещё 2 комментария
Теги:
firebase
firebase-realtime-database

1 ответ

0

Какое бы значение не ids внутри переменной ids оно передается для approve как имя переменной (ссылка), а не как буквальное значение.

Не уверен, что вы хотите, но я думаю, что вы хотите сделать, это:

onclick='approve(\'"+ids+"\')'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню