javascript - 更改 jtable (jquery) 操作选项运行时

标签 javascript jquery jquery-jtable

我需要在初始化后更改 jtable 的操作选项:

$('#tab-3').jtable({
            title: 'Documenti Allegati',
            paging: true, 
            pageSize: 10, 
            sorting: true, 
            defaultSorting: 'nomefile ASC', 
            actions: {
                listAction: 'action.php?action=getAllegatiByID&id='+id,
                deleteAction: 'action.php?action=delAllegatoByID&id='+id,
                updateAction: 'action.php?action=updateAllegatiById&id='+id,
                createAction:'temp'
                    },
            fields:{
                    ...
                    }
                   ...

我需要编辑createAction url。 我尝试在 $.hik.jtable.prototype.options 中搜索,但没有找到。

有人可以帮我吗? 非常感谢

最佳答案

jtable 操作采用 url 或函数,即来自 http://jtable.org/Demo/FunctionsAsActions

           createAction: function (postData) {
                console.log("creating from custom function...");
                return $.Deferred(function ($dfd) {
                    $.ajax({
                        url: '/Demo/CreateStudent',
                        type: 'POST',
                        dataType: 'json',
                        data: postData,
                        success: function (data) {
                            $dfd.resolve(data);
                        },
                        error: function () {
                            $dfd.reject();
                        }
                    });
                });
            },

您可以编写自己的函数来返回:

function myFunc(dfd){
    return $.ajax({
                        url: myCustomUrlThatIwantToChangeDynamically,
                        type: 'POST',
                        dataType: 'json',
                        data: postData,
                        success: function (data) {
                            $dfd.resolve(data);
                        },
                        error: function () {
                            $dfd.reject();
                        }
                    });
}

所以 Action 可以变成:

createAction: function (postData) {
            console.log("creating from custom function...");
            return $.Deferred(myfunc($dfd););
        },

然后您可以在需要时更改您的网址,并且 createAction 将使用更新后的网址。

只是一个建议。

关于javascript - 更改 jtable (jquery) 操作选项运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26232291/

相关文章:

javascript - 什么是普遍认可的电话号码格式

javascript - jQuery 只允许数字、字母和连字符

javascript - jquery 从数组中删除最后 2 个零

jquery - 将单列文本输入重新排列为多列

php - Jquery jTable PHP+MySQL 不更新

javascript - jquery jtable 多选下拉菜单

javascript - 我可以将变量 Controller 函数传递给指令中的函数链接吗?

javascript - AJAX 响应或 AJAX response.response.Text 的 IF 条件不起作用

javascript - 如何在 JavaScript 中设置函数执行顺序以使用回调函数?

javascript - .val() 不返回输入文本