2017-09-16 81 views
0

我正在創建一個phonegap應用程序。 此代碼將通過json獲取,de數據庫上的內容。然後我想用device.uuid在數據庫中插入投票。問題在於on(「click」)或on(「touchstart」)不會觸發,即使在alert()中也是如此。請幫忙!!Phonegap/Cordova - on(「click」)not firing

$(document).ready(function() { 
     var url = "http://filmpix.esy.es/json.php"; 
     $.getJSON(url, function(result) { 
      console.log(result); 
      $.each(result, function(i, field) { 
       var id = field.id; 
       $('.music-box').append("<button class='btn btn-default insert' value='" + id + "'>Votar</button>"); 
      }); 
     }); 

     $(".insert").on("touchstart", function() { 
      alert("asdasd"); 
      var music_id = $(this).val(); 
      var dataString = "music_id=" + music_id; 
      $.ajax({ 
       type: "POST", 
       url: "http://filmpix.esy.es/insert.php", 
       data: dataString, 
       crossDomain: true, 
       cache: false, 
       beforeSend: function() { 
        $("#insert").val('A votar...'); 
        confirm("Tens a certeza que queres votar nesta musica?"); 
       }, 
       success: function(data) { 
        if (data == "success") { 
         alert("inserted"); 
         $("#insert").val('Votado'); 
        } else if (data == "error") { 
         alert("Não foi possível votar"); 
        } 
       } 
      }); 
      return false; 
     }); 
    }); 
+0

是否有具有一定的ID(#INSERT)還是有幾個按鈕與某些類名一個按鈕?然後你想寫下:$(「。insert」)。on(....)來代替。 – Blauharley

+0

是的...我已經嘗試過,並沒有工作:(我只是編輯我的問題... –

+0

你也可以使用touchend事件,直接應用點擊監聽器按鈕或檢查可能的元素趴在這些按鈕上,並防止「觸摸」 - 事件被解僱。祝你好運! – Blauharley

回答

0

返回false語句應該出現在函數的「}」觸摸事件之後。