簡體   English   中英

未捕獲的TypeError:$(…).cytoscape不是一個函數

[英]Uncaught TypeError: $(…).cytoscape is not a function

我在互聯網上找到了此代碼,它可以正常工作:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="~/Scripts/cytoscape.js"></script>

   <div id="cy"></div>
    <script>
       $(function(){ // on dom ready

$('#cy').cytoscape({
  style: cytoscape.stylesheet()
    .selector('node')
      .css({
        'content': 'data(deneme)'
      })

我將此代碼更改為以下代碼(我基本上將該代碼塊移至ajax調用的成功部分內):

  $("form").submit(function (event) {
        event.preventDefault();
        $.ajax({
            type: 'POST',
            url: "/MyController/MyAction",
           data: { nameid: $('#nameid').val() },
            success: function (newdata) {

                $('#cy').cytoscape({
                    layout: {

它給出了這個錯誤:

> MainGraph:55 Uncaught TypeError: $(...).cytoscape is not a function
>     at Object.success (MyCode:55)
>     at i (jquery.min.js:2)
>     at Object.fireWith [as resolveWith] (jquery.min.js:2)
>     at A (jquery.min.js:4)
>     at XMLHttpRequest.<anonymous> (jquery.min.js:4)

我該如何進行這項工作? 我試圖將代碼更改為此:

var cy = cytoscape({
  container: $('#cy'),

上面的錯誤消失了,但隨后在其他部分失敗了。 我該如何解決這種情況? 謝謝。

沒有$(el).cytoscape()函數。 您確實let cytoscape = require('cytoscape'); let cy = cytoscape(); let cytoscape = require('cytoscape'); let cy = cytoscape(); 或者let Cytoscape = require('cytoscape'); let cy = new Cytoscape(); let Cytoscape = require('cytoscape'); let cy = new Cytoscape(); ]

通常不需要將cy init放在回調中。 只需將elements指定為Promise,然后Cytoscape即可處理其余部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM