(8)kendo UI使用基础介绍与问题整理——dialog/个人思辩

     此处的入坑,大家自己理解吧,主要是想描述一下我做的项目实际应用的时候存在的一些困惑,以及我采用的强制办法等。

1、关于#dialog

      通过上面的介绍,大家会发现使用dialog需要在页面的html部分,写一个用于创建弹窗的div(<div id="dialog"></div>),然后取它的id,通过这个id创建弹窗。

      我认为这样的使用方法,会在一个页面出现多个弹窗的情况下增加html代码的复杂度,也许这不并会增加多少工作量,不过我认为对于html和js分离项目,然后需要弹窗还要写两个部分的代码,不是一件很好的事情。

      我也并不认为这里的id,对于其他的部分的功能还有什么好处。并且要是这里的div要想添加内容,那么还需要先hide,总觉得这样制作出来的弹窗心好累。不过也不否认,身为一名程序员,处理这样的工作也不是很难的事情。

     ======================

      唠唠叨叨的部分到此先结束吧,既然选择了kendo,当然要接受它的全部,并且身为一名有使命感的程序员,有责任尽可能的用最合适的方式实现所需的功能。

      项目中因为弹窗很多,所以我通过js将需要的div添加到html的方法生成需要的html部分。

      并且为了防止id重复,id的名称是我通过一个计算的方法生成的名称。

 

      创建div的代码:

dialogIdkjlnh =1098999;//全局变量
function Dialog() {
    var dia;
    dialogIdkjlnh += 3;
    var dialogName = "dialog" + dialogIdkjlnh;
    var dialog = '<div id="' + dialogName + '"></div>';
    $("body").append(dialog);
    dia = "#" + dialogName;
    return $(dia);
};

     通过调用Dialog()这个方法,就成功的在html部分添加了一个div。

2、方法重写

因为我想自定义aler的显示标题和宽度大小,所以重写了alert方法和confirm方法。

重写kendo.alert demo:(自定义标题,没有关闭窗口的×)

kendo.alert = function (text) {
    var dialog = '<div id="kendoDiaAlert"></div>';
    if ($("body").find("#kendoDiaAlert").length == 0) {
        $("body").append(dialog);
    }
    var kendoDiaAlert = $("#kendoDiaAlert").kendoDialog({
        width: "280px",
        title: "提示",
        closable: false,
        close: function (e) {
            this.destroy();
        },
        content: '<div style="padding:40px 10px;text-align:center">' + text + '</div>',
        actions: [{
            text: '确定',
            primary: true,
            action: function () {
                kendoDiaAlert.close();
            }
        }]

    }).data("kendoDialog").open();

}

使用方法kendo.alert("这里是弹窗显示的文字!");

同理大家可以参考上面的demo,重写confirm方法。

3、后言

     最后我想吐槽一下使用的一些问题,先说一句抱歉,如有解决的妙法,希望大家不吝赐教,在此谢过!

    1)弹窗无法拖拽 

    2)无法设定位置,top的距离           (或许这种功能确实不太常用,可以通过样式实现解决)

    3)本身没有设置定时关闭的参数       (不过自定义完全可以实现)

   4)positon无法设置absolute,默认是fixed (不过倒是可以通过修改样式来实现)

   貌似主要就遇到上面的4个不适之处,在实际项目中,我的处理方法是通过修改样式、修改js的方式实现的,无形之中让代码变的冗余了很多,感觉很不舒服。

   dialog的整理到这里基本结束,欢迎大家留言评论,进行批评指正,感谢!

 

转载于:https://www.cnblogs.com/lindaCai/p/8391788.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Kendoui Dialog是一个弹出窗口组件,用于在网站开发中显示消息、警告、确认或其他信息。它提供了几种不同的类型和样式,以满足不同的需求。 首先,Kendoui Dialog可以用于显示普通的对话框窗口。这种类型的对话框可以用于显示一般的信息或提示消息,例如成功操作的提示、错误信息或简单的确认信息。 其次,Kendoui Dialog还提供了警告对话框。这种类型的对话框被用于显示重要的警告信息,例如删除数据的警告或执行危险操作的警告。 另外,Kendoui Dialog还可以用于显示确认对话框。这种类型的对话框用于获取用户的确认,例如在执行一些重要操作之前要求用户确认操作的类型。 此外,Kendoui Dialog还提供了一个进度对话框。这种类型的对话框可以显示进度的状态,例如加载或保存数据时的进度条。 最后,Kendoui Dialog还具有自定义对话框的功能。这意味着开发人员可以根据自己的需求自定义对话框的样式和布局。 总的来说,Kendoui Dialog提供了几种不同类型的对话框,包括普通对话框、警告对话框、确认对话框、进度对话框和自定义对话框,以满足网站开发中的不同需求。 ### 回答2: Kendo UI Dialog 是一个用于创建弹出对话框的组件。它提供了多种样式的对话框可以在网页上使用Kendo UI Dialog 主要分为以下几种类型: 1. 普通对话框(Plain Dialog):普通对话框是最基础、最简单的对话框类型。它提供了一个可自定义内容和按钮的对话框框架。普通对话框可以用于显示警告、确认、提示等信息。 2. 模态对话框(Modal Dialog):模态对话框是一种在对话框出现后,阻止用户与页面其他部分进行交互的对话框类型。除非关闭或完成对话框的操作,否则用户无法操作页面上的其他元素。模态对话框通常用于需要用户立即采取行动或提供重要信息的情况。 3. 嵌入式对话框(Inline Dialog):嵌入式对话框是一种特殊类型的对话框,它不是以弹出窗口的形式出现,而是在DOM的某个元素中嵌入显示。嵌入式对话框可以用于在页面的某个位置显示额外的信息或提供交互功能。 4. 提示对话框(Alert Dialog):提示对话框是一种类似于普通对话框的对话框类型,用于向用户显示重要的信息或提醒用户进行某种操作。与普通对话框不同的是,提示对话框通常只有一个按钮,用于关闭对话框。 这些是常见的Kendo UI Dialog 的几种类型。开发人员可以根据需要选择适合自己应用场景的对话框类型,并按照自己的需求进行定制。 ### 回答3: Kendo UI DialogKendo UI框架中的一个组件,用于创建弹出对话框。Kendo UI Dialog提供了多种不同的类型,以满足不同的需求。下面是Kendo UI Dialog的几种类型: 1. 模态对话框:模态对话框是一种可以阻止用户与应用程序的其他部分交互的对话框。当模态对话框打开时,用户只能与对话框进行交互,直到关闭对话框为止。 2. 非模态对话框:非模态对话框是一种允许用户与应用程序的其他部分交互的对话框。当非模态对话框打开时,用户可以同时与对话框和应用程序的其他部分进行交互。 3. 自定义对话框:Kendo UI Dialog还提供了灵活的自定义选项,可以根据应用程序的需求创建定制化的对话框。通过自定义对话框,开发者可以更改对话框的样式、布局和行为,以满足特定的需求。 以上是Kendo UI Dialog的几种类型。开发人员可以根据应用程序的需求选择适合的对话框类型,并根据需要进行自定义设置

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值