Сочетание Dropzone с нормальной формой - PullRequest
0 голосов
/ 11 июля 2019

У меня есть эта форма, в которой возникают проблемы при объединении.В настоящее время, поскольку мой div-файл dropzone внутри формы закомментирован, нижняя форма dropzone работает как обычно.

Я хочу объединить эту форму в свою первоначальную форму.

Однако я не могу указать URL в своих настройках.Когда я добавляю URL в мои опции, я получаю эту ошибку:

Uncaught Error: URL не указан.в новой Dropzone (dropzone.js: 1066) в dropzone.js: 2968 в Function.Dropzone.discover (dropzone.js: 2974) в Dropzone._autoDiscoverFunction (dropzone.js: 3516) в HTMLDocument.init (dropzone.js: 3484)

Я пытался поместить Dropzone.autoDiscover = false перед моим кодом $ (document) .ready, но это только устранило проблему отсутствия URL, и загруженный файл по-прежнему не работает

Это код формы:

<script>
    Dropzone.options.dropzone = {
        autoProcessQueue: false,
        addRemoveLinks: true,
        maxFiles: 1,
        uploadMultiple: false,
        parallelUploads: 1,
        acceptedFiles: ".csv",
        init: function () {
            var submitButton = document.querySelector("#submit");
            var token = $('input[name="__RequestVerificationToken"]').val();
            var wrapperThis = this;
            submitButton.addEventListener("click", function (e) {
                wrapperThis.processQueue();
                e.preventDefault();
                e.stopPropagation();
                e.stopImmediatePropagation();
                return false;
            });

            this.on('sending', function (data, xhr, formData) {
                formData.append("__RequestVerificationToken", token);
            });;

            this.on('error', function (file, message) {
                wrapperThis.disable();
            });

            this.on('success', function (file, message) {
                $(".dz-remove").hide();
                wrapperThis.disable();
                $(document).off("submit");
            });
        }
    };
</script>
<div class="col-sm-12">
    @using (Html.BeginForm(null, null, FormMethod.Post, new { @action = "/", enctype = "multipart/form-data", id = "form" }))
    {
        @Html.AntiForgeryToken()
        <div class="row">
            <div class="col-sm-12">
                <div class="form-group">
                    @Html.LabelFor(m => m.MessageContent)
                    @Html.TextAreaFor(m => m.MessageContent, new { @class = "form-control col-sm-12", @readonly = true })
                    @Html.ValidationMessageFor(m => m.MessageContent)
                </div>
            </div>
        </div>
        <div class="row">
            <div class="col-sm-12">
                <h5>Message Content Data Upload</h5>
                <p>This uploader only takes csv files. You can generate a file containing the relevant fields in the <a asp-area="Templates" asp-controller="Messages" asp-action="Index">Templates</a> page.</p>
            </div>
        </div>
        <div class="row">
            <div class="col-sm-6">
                <div class="form-group">
                    <label>Data</label>
                    @*<div id="dropzone" name="Files" class="dropzone form-group"></div>*@
                </div>
            </div>
            <div class="col-sm-6">
                <div class="form-group">
                    <label>Status</label>
                    <textarea rows="10" class="form-control col-sm-12" disabled id="UploadActivity"></textarea>
                </div>
            </div>
        </div>
        <div class="row">
            <div class="col-sm-12">
                <hr />
            </div>
        </div>
        <div class="row">
            <div class="col-sm-12">
                <div class="form-group">
                    <div class="clearfix">
                        <div class="pull-right">
                            <button type="submit" id="submit" class="btn btn-primary">Send</button>
                            @Html.ActionLink("Cancel", "Index", @ViewContext.RouteData.Values["controller"].ToString(), new { }, new { @class = "btn btn-outline-secondary" })
                        </div>
                    </div>
                </div>
            </div>
        </div>
    }
</div>

<form action="/" method="post" class="dropzone" id="dropzone"></form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...