gpt4 book ai didi

javascript - SQLite:SELECT * FROM Table 的问题在哪里?

转载 作者:行者123 更新时间:2023-11-28 21:09:18 25 4
gpt4 key购买 nike

我正在使用 SQLite、Javascript 和 Chrome 离线工作在我的主页(main.html)中,我有两个 div: <div id="menuLeft">包含项目名称列表以及用于编辑每个项目的按钮,以及

<div id="content">

项目列表写法如下:

<li>ItemName1
<div id="idItem1" class="editItem_btn">
<img src="btn_edit.png">`
</div>
</li>

在 main.html 中,我有以下代码:

$("#menuLeft").delegate(".editItem_btn", "click", function(e0)
{
e0.preventDefault();
var editItemId = $(this).attr("id");
editItemId = parseInt(editItemId);
var url="edititem.html"
$("#content").load(url,function(){
loadRecord(editItemId);`
});
});

当我单击给定项目的编辑按钮时,首先从编辑按钮周围的 div 的 id 中检索该项目的 id。然后我加载页面 edititem.html 内容。成功后,我运行函数 loadRecord(editItemId),其中 loadRecord(i) 包含在 edititem.html 中:

function loadRecord(j) 
{
var item = dataset.item(j);
idItem.value = item['id'];
ItemName.value = item['ItemName'];
dateStart.value = item['dateStart'];
dateEnd.value = item['dateEnd'];
notes.value = item['notes'];
}

该函数可以显示数据库中包含的Item(id,ItemName...)的参数。

这是我的问题,代码可以工作,但以一种奇怪的方式意味着如果我单击 Item1 的编辑按钮,则会显示 Item2 的参数。同样,如果我点击编辑 Item2,也会显示 Item3 的参数。

然后我替换了:

var item = dataset.item(j);

与:

var item = dataset.item(j-1);

这样就可以了。但我需要理解为什么它会这样,以及为什么我需要使用 (j-1)。我在 jquery 代码中放置了一些alert(),以检查我是否拥有正确的 editItemId 编号,并在函数 loadRecord(j) 中放置了一些alert()。单击后会检索正确的 ID 号,并将正确的 ID 号传递给该函数。我不知道这里有什么错误!

最佳答案

如果没有看到 sql 方面的内容,以及如何将数据传递回脚本,就不可能准确地告诉您发生了什么,但这只是一些列表基于 0 和一些列表基于 1 的情况。例如,数组通常是基于 0 的(除非您专门以不同的方式创建它们),但 $("#id").each(function(Index)... 是基于 1 的。您只需要知道您是什么使用并偶尔按照您发现的方式进行操作,并在相关时使用 -1 或 +1。

关于javascript - SQLite:SELECT * FROM Table 的问题在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9083623/

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