在 angularjs 中隐藏和显示



我是 angularJs 的新手。

这是我的位级视图

<input type="text" ng-model="todoName" size="30"
            placeholder="Add Your Name">
        <input type="text" ng-model="todoAge" size="30"
            placeholder="Add Your Age">
        <input type="hidden" ng-model="todoId" />
        <form style="display:'?????????'" ng-submit="addTodo()">
            <input class="btn-primary" type="submit" value="add">
        </form>
         <form style="display:'?????????'" ng-submit="addTodo()">
            <input class="btn-primary" type="submit" value="update">
        </form>

这是我的 AngularJS 位级编码

$scope.DisplayUpdate = "none";

我有一个用于管理学生详细信息的screan,我想在第一次时显示添加按钮,此时隐藏更新按钮,以及何时更新时间显示更新按钮,此时需要隐藏添加按钮。

请参阅此行,以使用 Angular JS 在脚本端隐藏和显示详细信息: $scope.DisplayUpdate = "none";

如何在我的按钮样式中设置此值?

 <form style="display:'?????????'" ng-submit="addTodo()">
                <input class="btn-primary" style="display:'?????????'" type="submit" value="add">
            </form>
您可以使用

ng-show来隐藏它

<form ng-show="DisplayUpdate === 'none'" ng-submit="addTodo()">
    <input class="btn-primary" type="submit" value="add">
</form>

如果要将其从 DOM 树中删除,请使用 ng-if

<form ng-if="DisplayUpdate === 'none'" ng-submit="addTodo()">
    <input class="btn-primary" type="submit" value="add">
</form>

不要直接设置样式,使用 ng-show 指令,让 Angular 为您处理。

接口文档

终于我明白了.

以下是我的代码:

JS文件 :

function TodoCtrl($scope) {
    var value = BindStudentList();
    function BindStudentList() {
        $.ajax({
            url: '/Home/Contact1',
            type: 'GET',
            async: false,
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function (data) {
                value = data.data;
            }
        });
        $scope.DisplaySave = true;
        $scope.DisplayUpdate = false;
        return value;
    }
    $scope.addTodo = function () {      
        $.ajax({
            url: '/Home/Index1',
            type: 'GET',
            data: { todoName: $scope.todoName, todoAge: $scope.todoAge },
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function (data) {
                value = data.data;
            }
        });
    };
    $scope.Sample = value;
    $scope.remaining = function () {
        var count = 0;
        angular.forEach($scope.Sample, function (todo) {
            count += todo.done ? 0 : 1;
        });
        return count;
    };
    $scope.editTodo = function (Student) {
        $.ajax({
            url: '/Home/Edit1',
            type: 'GET',
            data: { Id: Student.todo.StudentId },
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function (data) {
                $scope.todoName = data.data.StudentName;
                $scope.todoAge = data.data.StudentAge;
                $scope.todoId = data.data.StudentId;
                $scope.DisplayUpdate = true;
                $scope.DisplaySave = false;
            }
        });
    };
}

这是我的视图代码

<!doctype html>
<html ng-app>
<body>
    <script src="~/Scripts/angular.js"></script>
    <h2>Student Details</h2>
    <div ng-controller="TodoCtrl">
        <span>{{remaining()}} of {{Sample.length}} remaining</span>
        [ <a href="" ng-click="archive()">archive</a> ]
        <input type="text" ng-model="todoName" size="30"
            placeholder="Add Your Name">
        <input type="text" ng-model="todoAge" size="30"
            placeholder="Add Your Age">
        <input type="hidden" ng-model="todoId" />
        <form ng-show="DisplaySave" ng-submit="addTodo()">
            <input class="btn-primary" type="submit" value="Save">
        </form>
        <form ng-show="DisplayUpdate" ng-submit="addTodo()">
            <input class="btn-primary" type="submit" value="Update">
        </form>
        <br />
        <br />
        <table>
            <tr>
                <td><b>Student Name</b></td>
                <td><b>Student Age</b></td>
            </tr>
            <tr ng-repeat="todo in Sample">
                <td><span>{{todo.StudentName}}</span></td>
                <td><span>{{todo.StudentAge}}</span></td>
                <td>
                    <button value="{{todo.StudentId}}" ng-click="editTodo(this)">Edit</button>
                </td>
            </tr>
        </table>
    </div>
    <script src="~/Scripts/Todo.js"></script>
</body>
</html>

我在按钮中添加了ng-show="DisplaySave"ng-show="DisplayUpdate",我将在编辑和加载时使用angularjsjavascript中传递truefalse等值。

现在它正在工作。 我知道我的代码会对其他人有所帮助。干杯

相关内容

  • 没有找到相关文章

最新更新