2013-03-03 35 views
2

我有这个脚本来提交一些数据到我的数据库。它在1.4.2上效果很好,但我使用的模板需要1.9.1,所以我更新了我的网站。我遇到的问题是,当我尝试调用相同的函数时,现在出现错误。函数在jquery 1.4.2上工作,但不在jquery 1.9.1上

这里是我的js代码:

function drilldown(row_id){ 
var dealID = document.getElementById('dealID'+ row_id).value; 
var specialnotes = document.getElementById('specialnotes'+ row_id).value; 
var ready = document.getElementById('ready'+ row_id).value; 
var initials = document.getElementById('initials'+ row_id).value; 
var forcust = document.getElementById('forcust'+ row_id).value; 
var notes = document.getElementById('notes'+ row_id).value; 

$.ajax({ 
    url: "savedrilldown.php", 
    type: "GET", 
     //pass data like this 
    data: {dealID:dealID,specialnotes:specialnotes,ready:ready,initials:initials,forcust:forcust,notes:notes},  
    cache: false, 
    success: function(data) { 
    if (data=="1") 
    alert("Record updated!"); 
    } 

}); 
} 

这里是Firebug是显示我的错误:

TypeError: $ is undefined [Break On This Error]  
$.ajax({ 

,这里是什么我加载:

<script type="text/javascript" src="js/jquery-1.9.1.min.js"></script> 
<script type="text/javascript" src="js/jquery-migrate-1.1.1.min.js"></script> 
<script type="text/javascript" src="js/jquery-ui-1.9.2.min.js"></script> 

任何建议将不胜感激。非常感谢。

+1

是否在加载jquery之前调用drilldown()函数? – xat 2013-03-03 01:11:56

+0

为什么'data ==“1”'?我建议您将响应作为JSON发送,这更可靠。 – elclanrs 2013-03-03 01:13:03

+0

'data ===“1”'只是为了测试,因为我仍然在学习。谢谢你的回复 – 2013-03-03 01:28:02

回答

7

$基本上是jQuery调用,如果没有定义,它不会因为某种原因加载你的jQuery。

确保jquery加载正确,并且在执行jquery ajax之前加载它。

另外我想建议使用json和数据类型json传输数据,因为它有完美的形式通过json传输。

+8

@Nathaniel语法可能有点偏离,但答案是可以理解和有用的......为什么不编辑而不是抱怨?这是一个全球社区,英文不是每个人的第一语言 – charlietfl 2013-03-03 01:20:25

+0

感谢您的回复。我重新安排了我的脚本如何加载,现在它正在工作。 – 2013-03-03 01:28:36

+0

不用客气 – Rastko 2013-03-03 01:29:59

相关问题