gpt4 book ai didi

javascript - websql在循环中插入语句,数据源-json

转载 作者:行者123 更新时间:2023-12-03 04:48:24 28 4
gpt4 key购买 nike

经过几个小时的点击和试用,在查看各种帖子寻求帮助后,这段代码终于起作用了。但我希望有人帮助我理解函数(i,dat),这意味着什么?下面是我的完整代码 -

function get_assignedtasks_first_time(){
var jdata=$.getJSON( "http://45.114.246.107/quicktask/webservice/admtask.php?entdt=&entusr=SAURABH&company=&taskno=&status=&priority=&primary=", function( data ) {

db.transaction(function (tx) {

$.each(data, function(i, dat) {
tx.executeSql('INSERT INTO tasks (sno, taskdesc) VALUES("'+data[i]['SNO']+'", "'+data[i]['TASKDESC']+'")');
});
alert("completed");

});
});
}

最佳答案

函数$.each接受两个参数。第一个是正在迭代的数组,第二个是为数组中的每个元素执行的回调函数。

对于数组中的每个元素,$.each 将使用两个参数执行此回调函数。第一个参数(定义为i)是当前元素的索引,第二个参数(dat)是您在每次迭代中查看的实际元素。

对于您定义的函数,您将从数组中的每个元素中提取“SNO”和“TASKDESC”属性。但是,您似乎没有使用包含当前条目的 dat 参数,而是使用原始数组(使您的代码阅读起来有点复杂)。

实现该功能的另一种方法可能如下所示:

function(index, element) {

// put these variables in quotes
var sno = "'" + element.SNO + "'";
var taskdesc = "'" + element.TASKDESC + "'";

// join these strings with commas
var values = [sno, taskdesc].join(',');

tx.executeSql("INSERT INTO TASKS (sno, taskdesk) VALUES(" + values + ")")
alert("inserted " + values);

}

在这种情况下,我们根本不需要使用索引,因为我们使用的是第二个参数(正在迭代的元素)。

关于javascript - websql在循环中插入语句,数据源-json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42771613/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com