DataTable плагин JQuery динамического создания таблиц и данных - PullRequest
0 голосов
/ 13 октября 2018

http://github.com/KenAdeniji/WordEngineering/blob/master/IIS/WordEngineering/alasql.org/AlaSQL.js_-_OnlyRefuseSubstainTheLine.html

Я использую Ajax для извлечения всей Библии из базы данных.Я использую AlaSql.js для извлечения священного текста для каждой ссылки на Священные Писания.Я хотел бы использовать DataTables.net для отображения священного текста для каждой ссылки на Священные Писания.

        var isPostBack = false;
        var dataSet = null;

        function dataParse()
        {
            document.getElementById("resultSet").innerHTML = "";

            sqlStatements = 
            [
                `SELECT * FROM ? WHERE chapterIdSequence = 22`,
                `SELECT * FROM ? WHERE bookId = 43 AND chapterId = 1`
            ];

            for
            (
                var sqlStatementId = 0, 
                    sqlStatementIdCount = sqlStatements.length;
                sqlStatementId < sqlStatementIdCount;
                ++sqlStatementId
            )
            {
                var alasResult = alasql
                (
                    sqlStatements[sqlStatementId], [dataSet]
                );


                var resultTable = document.createElement("table");
                resultTable.id = "resultTable" + sqlStatementId;
                let myTable = $('#' + resultTable.id).DataTable
                ( 
                    {
                        "data": alasResult,
                        "columns": [
                            { "data": "verseIdSequence" },
                            { "data": "scriptureReference" },
                            { "data": "KingJamesVersion" }
                        ],
                        destroy: true
                    }
                );
                //document.getElementById("resultSet").appendChild(myTable);
                $("#resultSet").append(myTable);
                //scriptLiteral9432.renderDataTable(alasResult, "resultSet")
            }
        }

        function querySubmit()
        {
            if (dataSet) { dataParse(); return; }
            var request = {};
            //request["scriptureReference"] = scriptureReference;
            var requestJson = JSON.stringify(request);

            $.ajax
            ({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: 
                    "/WordEngineering//AlaSQL.js/AlaSQL.js_-_OnlyRefuseSubstainTheLine.asmx/Query",
                data: requestJson,
                dataType: "json",
                success: function(data) 
                {
                    dataSet = JSON.parse(data.d);
                    dataParse();
                },
                error: function(xhr)
                { 
                    $("#resultSet").html
                    (
                        'Status: ' + xhr.status + " | " + 
                        'StatusText: ' + xhr.statusText + " | " +
                        'ResponseText: ' + xhr.responseText
                    );
                } 
            });
        }

        function pageLoad()
        {
            if (isPostBack === false)
            {
                $.getScript
                ( 
                    "/WordEngineering/WordUnion/9432.js", 
                    function( data, textStatus, jqxhr ) 
                {
                    var scriptureReference = 
                        scriptLiteral9432.getParameterByName
                        (
                            "scriptureReference"
                        );
                    if (scriptureReference)
                    {
                        document.getElementById
                        (
                            "scriptureReference"
                        ).value = scriptureReference;
                    }   
                    scriptLiteral9432.renderBibleVersionSelect();
                    var bibleVersion = 
                        scriptLiteral9432.getParameterByName
                        (
                            "bibleVersion"
                        );
                    if (bibleVersion)
                    {
                        document.getElementById
                        (
                            "bibleVersion"
                        ).value = bibleVersion;
                    }   
                    querySubmit();
                    isPostBack = true;  
                });
            }
            else
            {
                querySubmit();
            }
        }

        window.addEventListener("load", pageLoad, false);

        document.getElementById
        (
            "submitQuery"
        ).addEventListener
        (
            "click",
            querySubmit,
            false
        );
...