我正在使用jstree 3.2.1构建应用程序
我的树是使用像这样的ajax请求呈现的:
$("#jstree").jstree({
"core" :
{
'data' :
{
type: "POST",
url : '/ajax.php',
dataType : 'json'
}
},
"plugins" : [ "search", "json_data" ]
});
脚本ajax.php返回一个json编码数组,这样可以很好地填充树。
但是如果没有ajax.php(例如一个空数组)返回的数据,我该如何检查并适当处理它,例如在#jstree
中添加一条消息告诉用户那里没有数据?
ajax语法对我来说很奇怪,但上面的代码实际上是通过ajax获取数据。它看起来很奇怪,因为没有done()
或等效的可以在普通的jquery中使用,你可以在那里检查返回的内容。
答案 0 :(得分:1)
为了给自己灵活性,我创建了自己的ajax调用并将JSON数据放入变量中,然后将此变量传递给JSTree初始化。所以,你可以这样做:
var jsTreejsonData = $.ajax({
// Your Ajax here
});
if (jsTreejsonData)
{
var jsTreeConfig = {
core: { 'data': jsTreejsonData },
plugins: ['search']
}
$("#jstree").jstree(jsTreeConfig);
}
else
{
//Blank response handling goes here
}