在Xcode中开发的Phonegap 2.9.0:错误:TypeError:' undefined'不是文件中的函数

时间:2013-07-16 14:36:14

标签: jquery xcode jquery-mobile cordova

当我尝试单击有问题的行并启动事件监听器时,我不断收到输出到Xcode控制台的调试错误代码。

错误消息已满(删除长文件路径以保持其清洁):

  

错误:TypeError:'undefined'不是file:///Users/....../index.js第1339行的函数

1339是显示的第一行代码块。

代码:

        $("#contact-list").on("click", "a", function(event){
        event.preventDefault();
        var me = this;
        console.log('The event listener is working');

        var phoneNumber = me.attr('id').text();
        console.log('phoneNumber is being sent');
        if (phoneNumber.substr(0, 1) == '+') {
            phoneNumber = me.userExitCode + phoneNumber.substr(1);
        }
        phoneNumber = phoneNumber.replace(/[^0-9]/g, '');

        var data = {
            'name': me.children('h3').val(),
            'phone_number': phoneNumber,
            'part': 'contact'
        };

2 个答案:

答案 0 :(得分:2)

var phoneNumber = me.attr('id').text();

不行。如果你的意图是抓住我的元素,

var phoneNumber = $(me).attr('id');
  1. 我将me与$包裹在一起(因为methis,jQuery期望$(this)
  2. 我删除了text()函数调用,因为attr本身会返回文本。

答案 1 :(得分:1)

你有JQuery吗?如果你的JQuery版本比1.7更新,那么“live”函数已被弃用为“on”。

  

从jQuery 1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。旧版jQuery的用户应该使用.delegate()而不是.live()。

来源:

- http://api.jquery.com/live/

- http://api.jquery.com/on/