Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 切换我读入的JSON文件_Javascript_Json_D3.js - Fatal编程技术网

Javascript 切换我读入的JSON文件

Javascript 切换我读入的JSON文件,javascript,json,d3.js,Javascript,Json,D3.js,如果我通过一个JSON文件,我有一个函数可以运行我的代码。我这样做是为了通过按钮而不是代码来更改文件 tryOutChange(JSONFILE) // this holds the main bulk of code. changeJSON() // this is a button that runs the function above. 此函数首先删除保存节点和边的旧“g”元素(我的强制图),然后使用不同的JSON文件运行主代码。通过这种方式,我可以单击相同的按钮并交换我读取的JSON

如果我通过一个JSON文件,我有一个函数可以运行我的代码。我这样做是为了通过按钮而不是代码来更改文件

tryOutChange(JSONFILE) // this holds the main bulk of code.
changeJSON() // this is a button that runs the function above.
此函数首先删除保存节点和边的旧“g”元素(我的强制图),然后使用不同的JSON文件运行主代码。通过这种方式,我可以单击相同的按钮并交换我读取的JSON文件

var networkJSONfile = true;
    function changeJSON()
    {
        var oldForce = document.getElementById("forceLayout");
    oldForce.parentNode.removeChild(oldForce);

        if(networkJSONfile == true){
        tryOutChange(engine);
        networkJSONfile = false;
        } else if(networkJSONfile == false){
            tryOutChange(network);
            networkJSONfile = true;
        }
    }
这很有效。但只有一次。当我去创建一个我最近删除的图形时,它不会再次创建该图形吗?我是否也碰巧删除了JSON文件

网络和引擎是JSON文件

下面是发生的情况

我运行
tryOutChange()
并将
'network'
JSON文件直接传递给它,这样它就会出现一个网络查看器

然后单击一个按钮,该按钮运行
changeJSON()
函数

此函数删除我以前调用
tryOutChange()
时创建的所有内容。然后使用
引擎JSON
再次调用该函数

当我再次点击按钮时,它也会这样做。删除我创建的内容,然后使用网络JSON调用
tryOutChange()
函数。等等所以理论上,它应该在点击时将JSON文件从网络切换到引擎


当我第一次单击它时,它会删除网络并显示引擎,但是当我想返回并使用
networkjson
重新创建网络时,它不会工作吗

您能否确保
引擎
网络
是有效的json?我们需要看到更多的代码。与设置
网络
引擎
变量的位置相关的代码在哪里?它们只是同一目录中的文件。我假设它们是有效的JSON,因为当我自己运行它们时,它可以工作,就像第一次运行它们一样。但是,当我返回到第一个JSON文件时(如在使用起始JSON文件再次调用函数时),它出现了一个错误。我们可以看到将click事件绑定到
changeJSON
处理程序的代码吗?如在onClick调用中一样?如果您可以确保每次单击按钮时都会调用方法
changeJSON
,那么您的问题是
tryOutChange
call。。。我们能看到吗?