首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >吴-点击不被解雇

吴-点击不被解雇
EN

Stack Overflow用户
提问于 2016-12-01 09:44:30
回答 1查看 50关注 0票数 0

我做了一个代码片段,我在多个部分视图中使用。在所有的观点中,它似乎是起作用的,除了一个。这个特定的部分视图没有什么特别之处,每个视图上的代码片段都是相同的。

但是,我没看到什么吗?

真正的问题是:

Ng-点击提交的表单不会被触发。然而,提交了该表格。

代码语言:javascript
复制
$scope.submitNewNoteForm = function () {
        alert("HI");
    $("#new_noteform").on("submit", function (e) {
        alert("yo");

        var formObj = $("#new_noteform");
        var formURL = formObj.attr("action");
        var formData = new FormData(this);
        $.ajax({
            url: formURL,
            type: 'POST',
            data: formData,
            mimeType: "multipart/form-data",
            contentType: false,
            cache: false,
            processData: false,
            success: function (data, textStatus, jqXHR)
            {
                $('#new_noteform')[0].reset();
                $('#new_note').modal('toggle');
            },
            error: function (jqXHR, textStatus, errorThrown)
            {
                alert(textStatus);
            }
        });
        //Prevent Default action. 
        e.preventDefault();
        e.unbind();
    }
    );
};

吴-点击方法:

片段:

代码语言:javascript
复制
<div class="card-body card-padding " ng-controller="NoteListCtrl" id="noteslist"> 
                <div class="row">
                    <div class="col-sm-12 actionBar">
                        <div class="fg-line form-group">
                            <input class="form-control ng-pristine ng-untouched ng-valid ng-empty" ng-model="notesearch" type="text" placeholder="Zoek in notities">
                        </div>
                    </div>
                </div>
                <div >
                    <div class="contactperson" ng-repeat="note in allnotes| filter : notesearch" ng-click="getNoteByID(note.id)" data-toggle="modal" data-target="#view_note">
                        {{note.title}}
                    </div>
                </div>
                <div class="modal fade bs-example-modal-lg" id="view_note" tabindex="-1" role="dialog" aria-labelledby="view_note">
                    <div class="modal-dialog modal-lg">
                        <div class="modal-content">
                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                                <h4 class="modal-title" id="myModalLabel">{{selnote.title}}</h4>
                            </div>
                            <form role="form" action="index.php" method="POST">
                                <div class="container">
                                    <p ng-bind-html="SkipValidation(selnote.content)"></p>
                                </div>
                                <center>
                                    <button type="button" class="btn btn-default btn-sm m-10" data-dismiss="modal">Cancel</button>
                                    <button type="submit" class="btn btn-success btn-sm hec-save waves-effect m-10" name="save_alert">Save</button> 
                                </center>
                            </form>

                        </div>
                    </div>
                </div>
                <div class="modal fade bs-example-modal-lg" id="new_note" tabindex="-1" role="dialog" aria-labelledby="new_note" data-backdrop="static" data-keyboard="false">
                    <div class="modal-dialog modal-lg">
                        <div class="modal-content">
                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                                <h4 class="modal-title" id="myModalLabel">Nieuwe notitie</h4>
                            </div>
                            <form role="form" action="adresboek.php" method="POST" id="new_noteform" >

                                <input type="hidden" name="ref_id"  value="{{letter.id}}"/>
                                <input type="hidden" name="level" value="3"/>
                                <div class="container">
                                    <div class="fg-line form-group">
                                        <input type="text" name="title" placeholder="Titel"/>
                                    </div>
                                    <div class="form-inline">
                                        <div class="form-group">
                                            <label class="radio-inline"><strong>Urgentie</strong></label>
                                            <label class="radio-inline">
                                                <input name="sampleinlineradio" value="1" type="radio" name="urgency">
                                                !</label>
                                            <label class="radio-inline">
                                                <input  name="sampleinlineradio" value="2" type="radio" name="urgency">
                                                !!</label>
                                            <label class="radio-inline">
                                                <input  name="sampleinlineradio" value="3" type="radio" name="urgency">
                                                !!!</label>
                                        </div>
                                    </div>
                                </div>
                                <textarea class="form-control html-editor" name="content" style="resize:none;"></textarea>
                                <center>
                                    <button type="button" class="btn btn-default btn-sm m-10" data-dismiss="modal">Cancel</button>
                                    <input type="hidden" name="save_note" value=""/>
                                    <button type="submit" ng-click="submitNewNoteForm()" class="btn btn-success btn-sm hec-save waves-effect m-10" >Opslaan</button> 
                                </center>
                            </form>
                        </div>
                    </div>
                </div>
            </div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-01 09:49:09

您应该在表单上使用ng-submit而不是ng-单击submit按钮(医生在这里):

代码语言:javascript
复制
<form role="form" action="adresboek.php" method="POST" id="new_noteform" ng-submit="submitNewNoteForm($event)">

在您的控制器中,您不需要侦听提交事件,它是由角和ng-submit中的函数处理的:

代码语言:javascript
复制
$scope.submitNewNoteForm = function (e) {
    // To put at the top level
    e.preventDefault();

    alert("yo");

    var formObj = $("#new_noteform");
    var formURL = formObj.attr("action");
    var formData = new FormData(this);
    $.ajax({
        url: formURL,
        type: 'POST',
        data: formData,
        mimeType: "multipart/form-data",
        contentType: false,
        cache: false,
        processData: false,
        success: function (data, textStatus, jqXHR)
        {
            $('#new_noteform')[0].reset();
            $('#new_note').modal('toggle');
        },
        error: function (jqXHR, textStatus, errorThrown)
        {
            alert(textStatus);
        }
    });
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40907185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档