如何使用JavaScript处理SQLite中snippet()的返回值?
我无法确定如何在SQLite中访问snippet()搜索的返回值。如果我这样搜索:如何使用JavaScript处理SQLite中snippet()的返回值?,javascript,jquery,sqlite,Javascript,Jquery,Sqlite,我无法确定如何在SQLite中访问snippet()搜索的返回值。如果我这样搜索: query = "SELECT * FROM guidelines WHERE guidelines MATCH '" + search + "*';"; query = "SELECT snippet(guidelines) FROM guidelines WHERE guidelines MATCH '" + search + "*';"; transaction.executeSql(query,[],
query = "SELECT * FROM guidelines WHERE guidelines MATCH '" + search + "*';";
query = "SELECT snippet(guidelines) FROM guidelines WHERE guidelines MATCH '" + search + "*';";
transaction.executeSql(query,[], function(transaction, result) {
if (result != null && result.rows != null) {
$('#lbResult').html('');
for (var i = 0; i < result.rows.length; i++) {
var row = result.rows.item(i);
$('#lbResult').append('<br/> ' + row);
}
}
});
然后我得到一个对象,其值与我可以轻松访问的列名相对应。这将打印出正确的值:
$('#lbResult').append('<br/> Search result:' + row.category + ' ' + row.id + ' ' + row.header + '<br/>');
然后尝试按如下方式打印结果:
query = "SELECT * FROM guidelines WHERE guidelines MATCH '" + search + "*';";
query = "SELECT snippet(guidelines) FROM guidelines WHERE guidelines MATCH '" + search + "*';";
transaction.executeSql(query,[], function(transaction, result) {
if (result != null && result.rows != null) {
$('#lbResult').html('');
for (var i = 0; i < result.rows.length; i++) {
var row = result.rows.item(i);
$('#lbResult').append('<br/> ' + row);
}
}
});
transaction.executeSql(查询,[],函数(事务,结果){
if(result!=null&&result.rows!=null){
$('#lbResult').html('');
对于(var i=0;i '+行);
}
}
});
然后,我为每个返回的结果获取一个对象。我得到了正确数量的返回结果,因此搜索工作正常,我只是不知道如何在JavaScript中定位这个值。有什么建议吗?我到处寻找这个问题的答案。最后,我通过对返回对象的各个级别运行
for key In(object)
循环得到了它,这对项
有效:
transaction.executeSql(query,[], function(transaction, result) {
if (result != null && result.rows != null) {
$('#lbResult').html('');
for (var i = 0; i < result.rows.length; i++) {
var row = result.rows.item(i);
for(var key in row) {
var value = row[key]; //this gives the string value of the returned snippet
$('#lbResult').append('<br/> ' + value );
}
}
}
},nullHandler,errorHandler);
transaction.executeSql(查询,[],函数(事务,结果){
if(result!=null&&result.rows!=null){
$('#lbResult').html('');
对于(var i=0;i '+值);
}
}
}
},nullHandler,errorHandler);
列名代码片段(指南)
不能在JavaScript中用作名称
可以通过行中的索引检索列值,但如果为列指定另一个名称,则代码更清晰:
query = "SELECT snippet(guidelines) AS snips FROM ..:";
...
value = row.snips;