在onClick中显示一个对话框

蓝天

在这个小提琴http://jsfiddle.net/WzEvs/286/中,我更新了一些代码,以便在单击按钮时才显示对话框。但是对话框没有显示。我需要以其他方式调用模块吗?

小提琴代码:

<div ng-app="app" dialog-form=""></div>


<button id="btnSave">Save Click</button>

angular.module("app", []);

  $(document).ready(function () {

        $("#btnSave").click(
            function () {
                showit();
            }            
        );
    });

function showit(){

    alert('here')

angular.module("app")
    .directive("dialogForm", function () {


    return {
        restrict: "A",
        template: "<div id='dialog-form'><label for='name'>Name</label> <input type='text' name='name' id='name' ng-model='data.message'><h1>{{data.message}}</h1></div>",
        controller: function ($scope, $element) {
            $scope.data = {};
            $scope.data.message = "";
        },
        link: function (scope, element, attrs) {
            element.dialog({
                autoOpen: false,
                height: 250,
                width: 350,
                modal: true,
                buttons: {
                    Ok: function () {
                        element.dialog("close");
                    }
                }
            });

            element.dialog("open");
        }
    };
});
}

更新 :

这是我为了将其显示为ng-click而尝试执行的操作,但未触发任何操作:

http://jsfiddle.net/WzEvs/300/

代码 :

<table>
    <tr ng-controller="MyController" ng-click="showit()">Click</tr>
</table>

function MyController($scope) {

$scope.showit() = function() {

    alert('here')

angular.module("app")
    .directive("dialogForm", function () {


    return {
        restrict: "A",
        template: "<div id='dialog-form'><label for='name'>Name</label> <input type='text' name='name' id='name' ng-model='data.message'><h1>{{data.message}}</h1></div>",
        controller: function ($scope, $element) {
            $scope.data = {};
            $scope.data.message = "";
        },
        link: function (scope, element, attrs) {
            element.dialog({
                autoOpen: false,
                height: 250,
                width: 350,
                modal: true,
                buttons: {
                    Ok: function () {
                        element.dialog("close");
                    }
                }
            });

            element.dialog("open");
        }
    };
});
};

应显示的内容:“确定”警报框“此处”。单击“确定”时,以上代码中将出现一个新对话框(称为dialogForm)。

显示的内容:好的更改框“这里”。当单击“确定”时,确定框消失,但不显示上述代码中的新对话框(称为dialogForm)。

更新 :

接受的答案代码:

html:

<div ng-app="app">
    <div dialog-form=""></div>
    <button id="btnSave">Save Click</button>
</div>

javascript:

angular.module("app", []);

angular.module("app")
.directive("dialogForm", function() {
    return {
        restrict: "A",
        template: "<div id='dialog-form'><label for='name'>Name</label> <input type='text' name='name' id='name' ng-model='data.message'><h1>{{data.message}}</h1></div>",
        controller: function ($scope, $element) {
            $scope.data = {};
            $scope.data.message = "";
        },
        link: function (scope, element, attrs) {
            element.dialog({
                autoOpen: false,
                height: 250,
                width: 350,
                modal: true,
                buttons: {
                    Ok: function () {
                        element.dialog("close");
                    }
                }
            });

                        angular.element("#btnSave").on("click", function () {
                element.dialog("open");
            });
        }
    };

});
托普汉姆·哈特爵士

您可以通过选择按钮来触发对话框打开来修改指令链接功能:

<div ng-app="app">
    <div dialog-form=""></div>
    <button id="btnSave">Save Click</button>
</div>

angular.module("app")
.directive("dialogForm", function () {

return {
    restrict: "A",
    template: "<div id='dialog-form'><label for='name'>Name</label> <input type='text' name='name' id='name' ng-model='data.message'><h1>{{data.message}}</h1></div>",
    controller: function ($scope, $element) {
        $scope.data = {};
        $scope.data.message = "";
    },
    link: function (scope, element, attrs) {
        element.dialog({
            autoOpen: false,
            height: 250,
            width: 350,
            modal: true,
            buttons: {
                Ok: function () {
                    element.dialog("close");
                }
            }
        });

        // From the dialog-form element, find the "#btnSave" sibling element.
        // bind the dialog open function to a click event on that element.

        element.siblings("#btnSave").on("click", function() {
            element.dialog("open");
        });
    }
};

});

(可选)您可以在指令的链接函数中使用angular.element()以避免担心按钮的放置(id选择器仍然是最快的)。

angular.element("#btnSave").on("click", function(){ element.dialog("open"); });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#显示对话框在WinForms中的另一个对话框?

来自分类Dev

如何在Android 4.4.2中的另一个对话框活动上显示对话框活动?

来自分类Dev

第一个活动中显示的对话框,而不是创建片段的对话框

来自分类Dev

验证失败时,显示的PrimeFaces对话框很少,而不是一个对话框

来自分类Dev

Android:显示一个对话框以启用wifi

来自分类Dev

在右上角显示一个对话框

来自分类Dev

TeamCity显示一个模式对话框

来自分类Dev

xpages显示一个新文档。在对话框中

来自分类Dev

在一个模式对话框中显示多个模板

来自分类Dev

需要利用多个数组并将它们显示在一个对话框中

来自分类Dev

Applescript:从显示对话框中打开一个新的 Safari 选项卡

来自分类Dev

显示一个简单的对话框,该对话框接受JavaScript / jQuery中用户的输入?

来自分类Dev

只有在一个函数中调用了2个showDialog()时,flutter show对话框才会显示

来自分类Dev

如何将对话框位置坐标复制到另一个对话框中?

来自分类Dev

一段时间不活动后显示一个对话框

来自分类Dev

仅在android中一次显示一个进度对话框?

来自分类Dev

如何创建一个显示当前网页截图的打印对话框

来自分类Dev

显示对话框并重新启动一个出现LeakedWindow错误的Activity

来自分类Dev

在每个确定的值之后显示一个对话框

来自分类Dev

在显示为对话框的活动上方添加一个向上按钮

来自分类Dev

重新打开AboutDialog将显示一个空白对话框

来自分类Dev

如何显示一个等待用户输入的对话框?

来自分类Dev

wpf依赖项属性显示一个对话框来选择值

来自分类Dev

是否有一个SoftInputMode解决方法来显示整个对话框

来自分类Dev

为什么无法显示一个消息对话框?

来自分类Dev

如何在另一个上下文中显示对话框?

来自分类Dev

无法弄清楚如何显示一个Android对话框

来自分类Dev

PrimeNg p对话框未在第一个显示屏上居中

来自分类Dev

KivyMD // Python如何创建一个加载对话框(弹出窗口),该对话框在后台运行代码的同时显示一个旋转的轮子

Related 相关文章

  1. 1

    C#显示对话框在WinForms中的另一个对话框?

  2. 2

    如何在Android 4.4.2中的另一个对话框活动上显示对话框活动?

  3. 3

    第一个活动中显示的对话框,而不是创建片段的对话框

  4. 4

    验证失败时,显示的PrimeFaces对话框很少,而不是一个对话框

  5. 5

    Android:显示一个对话框以启用wifi

  6. 6

    在右上角显示一个对话框

  7. 7

    TeamCity显示一个模式对话框

  8. 8

    xpages显示一个新文档。在对话框中

  9. 9

    在一个模式对话框中显示多个模板

  10. 10

    需要利用多个数组并将它们显示在一个对话框中

  11. 11

    Applescript:从显示对话框中打开一个新的 Safari 选项卡

  12. 12

    显示一个简单的对话框,该对话框接受JavaScript / jQuery中用户的输入?

  13. 13

    只有在一个函数中调用了2个showDialog()时,flutter show对话框才会显示

  14. 14

    如何将对话框位置坐标复制到另一个对话框中?

  15. 15

    一段时间不活动后显示一个对话框

  16. 16

    仅在android中一次显示一个进度对话框?

  17. 17

    如何创建一个显示当前网页截图的打印对话框

  18. 18

    显示对话框并重新启动一个出现LeakedWindow错误的Activity

  19. 19

    在每个确定的值之后显示一个对话框

  20. 20

    在显示为对话框的活动上方添加一个向上按钮

  21. 21

    重新打开AboutDialog将显示一个空白对话框

  22. 22

    如何显示一个等待用户输入的对话框?

  23. 23

    wpf依赖项属性显示一个对话框来选择值

  24. 24

    是否有一个SoftInputMode解决方法来显示整个对话框

  25. 25

    为什么无法显示一个消息对话框?

  26. 26

    如何在另一个上下文中显示对话框?

  27. 27

    无法弄清楚如何显示一个Android对话框

  28. 28

    PrimeNg p对话框未在第一个显示屏上居中

  29. 29

    KivyMD // Python如何创建一个加载对话框(弹出窗口),该对话框在后台运行代码的同时显示一个旋转的轮子

热门标签

归档