0
我试图从JavaScript如何通过资源URI从JavaScript查询DBPedia?
var subject = document.getElementById("inputUri").value;
var property = "?p";
var object = "?o";
var query = "\
PREFIX dbpedia2: <http://dbpedia.org/property/>\
PREFIX foaf: <http://xmlns.com/foaf/0.1/>\
PREFIX : <http://dbpedia.org/resource/>\
SELECT * \
WHERE {\
"+ subject + property + object +".\
}LIMIT 10";
使这个查询我收到的变量?的从输入形式,但是当我写的另一个变量名,这是行不通的。 对结果的代码如下:
$.ajax({
dataType: "jsonp",
url: queryUrl,
success: function(_data) {
var results = _data.results.bindings;
var subject = document.getElementById("inputUri").value;
for (var i in results) {
var subjectResult = results[i].s.value;
var objectResult = results[i].o.value;
var propertyResult = results[i].p.value;
}
}
});
在
var subjectResult = results[i].s.value;
是错误的,但我不知道从我的输入文本到subjectResult分配获得的价值。
我所定义,其接收来自输入文本的任何变量名,由这样的变量:
var str = subject;
var res = str.replace("?", "");
然后在for循环:
var subjectResult = results[i][res].value;
像往常一样复制和粘贴错误。您从某个地方接受查询并从别处获取代码而不理解它。您的主题不是变量'?s',而是绑定到特定的资源URI - 因为您的问题标题也意味着。 – AKSW