简体   繁体   English

获取“未捕获的TypeError:$(...)。dialog不是函数”

[英]Getting “Uncaught TypeError: $(…).dialog is not a function”

I have the following code and after pressing a button that invokes the $("#proxy_history_dialog").dialog({ line - I keep getting the error Uncaught TypeError: $(...).dialog is not a function . I searched for a solution and most answers are pointing to jquery includes block. I tried to change jquery versions multiple times without any luck. What am I missing out here? 我有以下代码,并在按下一个调用$("#proxy_history_dialog").dialog({ line - 我一直收到错误Uncaught TypeError: $(...).dialog is not a function 。我搜索了一个解决方案,大多数答案都指向jquery包含块。我试图多次更改jquery版本而没有任何运气。我在这里错过了什么?

<!DOCTYPE HTML>
<html lang="en">
<head>
    <title>
    Optimize Proxies
 | Upstream Commerce</title>


    <script src="https://code.jquery.com/jquery-3.1.1.js"></script>
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>


    <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css"/>
    <link rel="stylesheet" type="text/css" href="/static/css/tables_style.css" />


    <link rel="stylesheet" type="text/css"
          href="https://cdn.datatables.net/v/dt/jq-2.2.3/dt-1.10.12/fh-3.1.2/datatables.min.css"/>

    <script type="text/javascript"
            src="https://cdn.datatables.net/v/dt/jq-2.2.3/dt-1.10.12/fh-3.1.2/datatables.min.js"></script>


    <script type="text/javascript" src="/static/script/api_recs.js"></script>


    <style type="text/css">
        tfoot {
            display: table-header-group;
        }
    </style>

</head>
<body>

    <img id="loader" src="/static/img/loader_animation_large.gif" 
    style="
        width:36px; 
        height:36px; 
        display: none;
        position:absolute; 
        top:50%;
        left:50%;
        margin-top:-18px;
        margin-left:-18px;"/>
    <p><a href="/accounts/logout/">Logout</a> | <a href="/accounts/profile/">Home</a></p>

    <div id="title">
        <b style="font-size:200%" ;>Optimize proxies<br></b>
    </div>
    <div id="proxy_history_dialog" title="Proxy history" style="display:none;">
    </div>
    <table id='p_table-id' class="display" cellspacing="0" width="50%">
        <thead>
        <tr>

                <th>Site name</th>

                <th>Site id</th>

                <th>Extraction rate</th>

                <th>Proxy</th>

                <th>Proxy duration</th>

                <th>Proxy history</th>

        </tr>
        </thead>
        <tfoot>
        <tr>

                <th>Site name</th>

                <th>Site id</th>

                <th>Extraction rate</th>

                <th>Proxy</th>

                <th>Proxy duration</th>

                <th>Proxy history</th>

        </tr>
        </tfoot>
        <tbody>

            <tr>

                    <td><span>hp</span></td>

                    <td><span>2198</span></td>

                    <td><span>95.2%</span></td>

                    <td><span>brazil</span></td>

                    <td><span>0 days</span></td>

                <td>
                    <button id="2198" class="get-proxy-history">history</button>
                </td>
            </tr>

            <tr>

                    <td><span>amazon_hp</span></td>

                    <td><span>2199</span></td>

                    <td><span>99.8%</span></td>

                    <td><span>all_std.proxymesh</span></td>

                    <td><span>422 days</span></td>

                <td>
                    <button id="2199" class="get-proxy-history">history</button>
                </td>
            </tr>

            <tr>

                    <td><span>bestonix</span></td>

                    <td><span>-104</span></td>

                    <td><span>93.3%</span></td>

                    <td><span>shader_us</span></td>

                    <td><span>225 days</span></td>

                <td>
                    <button id="-104" class="get-proxy-history">history</button>
                </td>
            </tr>

        </tbody>
    </table>

    <script>
        $(document).ready(function () {
            $(".get-proxy-history").click(function () {
                var uri = "manage/optimize_proxies/get_proxy_history/" + $(this).attr("id") + "/";
                var result = api_get(uri, false, 'POST');
                $("#proxy_history_dialog").html(result[0]);

                $("#proxy_history_dialog").dialog({
                    resizable: true,
                    width: "auto",
                    height: "auto",
                    autoResize: false,
                    modal: false,
                    draggable: true
                });
            });


            ///////////////////////////////////////////////////////////////////
            // Setup column search - add a text input to each footer cell
            $('#p_table-id tfoot th').each(function () {
                var title = $(this).text();
                $(this).html('<input type="text" placeholder="Search ' + title + '" />');
            });

            // DataTable
            var table = $('#p_table-id').DataTable({
                dom: 'l Brtip',
                "aLengthMenu": [
                    [20, 50, 100, -1],
                    [20, 50, 100, "All"]],
                "buttons": [],
                paging: false,
                fixedHeader: true


            });
            // Apply the search
            table.columns().every(function () {
                var that = this;

                $('input', this.footer()).on('keyup change', function () {
                    if (that.search() !== this.value) {
                        that
                            .search(this.value)
                            .draw();
                    }
                });
            });
        });
    </script>





</body>
</html>

It seems, the error is happening with your DataTables inclusion/version. 看来,您的DataTables包含/版本会发生错误。 I have tried with jQuery version 1.8.0 and DataTables version 1.10.1 and everything seems to be working fine for me. 我试过jQuery版本1.8.0DataTables版本1.10.1 ,一切似乎都适合我。

Working Fiddle: https://jsfiddle.net/mnexvzgx/ 工作小提琴: https //jsfiddle.net/mnexvzgx/

Note : I have commented out your API call and replaced the result with a dummy value. 注意 :我已经注释掉了您的API调用,并将结果替换为虚拟值。

Hope this helps! 希望这可以帮助!

put line 放线

<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

after

<script type="text/javascript" src="/static/script/api_recs.js"></script>

like: 喜欢:

<script src="https://code.jquery.com/jquery-3.1.1.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css"/>
<link rel="stylesheet" type="text/css" href="/static/css/tables_style.css" /> 
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/jq-2.2.3/dt-1.10.12/fh-3.1.2/datatables.min.css"/>    
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/jq-2.2.3/dt-1.10.12/fh-3.1.2/datatables.min.js"></script>    
<script type="text/javascript" src="/static/script/api_recs.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

note: if this way does not work then chech api_recs.js 注意:如果这种方式不起作用,那么chech api_recs.js

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 未捕获的TypeError:$(...)。dialog不是函数 - Uncaught TypeError: $(…).dialog is not a function Javascript未捕获的TypeError:$(…).dialog不是函数 - Javascript Uncaught TypeError: $(…).dialog is not a function 未被捕获的TypeError:$(…).dialog(…).dialog(…).dialogExtend不是函数 - Uncaught TypeError: $(…).dialog(…).dialog(…).dialogExtend is not a function 获取“未捕获的TypeError:$(...)。timeago不是函数” - Getting 'Uncaught TypeError: $(…).timeago is not a function' 未捕获的TypeError:创建对话框时$(...)。dialog不是函数错误 - Uncaught TypeError: $(…).dialog is not a function error when creating dialog box 使用 webpack 获取“未捕获的类型错误:$(...).tablesorter is not a function” - Getting 'Uncaught TypeError: $(...).tablesorter is not a function' using webpack 获取未捕获的TypeError:在JSFiddle中undefined不是函数 - Getting an Uncaught TypeError: undefined is not a function in JSFiddle 获取错误未捕获TypeError:string不是函数 - Getting error Uncaught TypeError: string is not a function 误捕获TypeError:***最近几天不是函数 - Getting Uncaught TypeError: *** is not a function in recent days 视频库得到 Uncaught TypeError: $(...).lightGallery is not a function - video gallery getting Uncaught TypeError: $(...).lightGallery is not a function
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM