这是我的代码:
from ll in (from l in db_Obj.VWrmz_HospitalCorrection
select hospitalName = l.HOSPITAL_NAME).ToList()
select ll.Substring(0, ll.IndexOf("--"))
插入数据后,我使用函数get()从indexedDB中获取数据,但是我没能得到它,有什么问题?谢谢!
getInitialState: function(){
return {
value:'' //for empty text value
}
}
单击另一个按钮获取数据后该功能正常工作。但是我无法获取数据。我已将newuser(用户名:1密码:1)添加到表user.But我无法获取数据。为什么?谢谢你的答案。
答案 0 :(得分:1)
您的代码确实工作,但对于给定的用户名只有一次:在将记录成功添加到数据库之后,它仍然存在(这是首先使用IndexedDB的重点) ,因此后续尝试执行set()
会导致addrequest
对象发生失败事件。这从未显示在您的代码中,因为您还没有为所述请求定义onerror
处理程序。
替换......
addrequest.onsuccess = function(event) {
alert("Success");
};
...与......
addrequest.onerror = function(event) {
if (console && console.log) { console.log("add op: Fail\n"); }
};
addrequest.onsuccess = function(event) {
if (console && console.log) { console.log("add op: Success\n"); }
};
...并且看到它发生了(我已经冒昧用控制台输出取代警报。在浏览器窗口中按ctrl-j打开控制台。)
在Chrome 50上测试。
<强> 更新 强>
更改get
功能,如下所示:
而不是......
objectStore.get(username.value);
if (password.value == event.target.result.password)
alert("Success“);
else
alert("Failed");
...写...
var getrequest = objectStore.get(newuser.username);
getrequest.onerror = function(event) {
if (console && console.log) { console.log("get op: Fail\n"); }
};
getrequest.onsuccess = function(event) {
if (console && console.log) { console.log("get op: Success\n"); }
};
......它会起作用。