Удаляя строку таблицы HTML с помощью tr.remove (), кнопка «Отправить» отправляет назад только строки над ней, а не под ней. - PullRequest
2 голосов
/ 28 марта 2019

У меня есть таблица HTML, для которой у меня есть кнопка удаления для каждой строки.Нажав на кнопку удаления, он переходит к JavaScript, и я удаляю строку, используя приведенный ниже код.Когда я пытаюсь отправить содержимое таблицы обратно в контроллер, используя submit (Ajax.beginform), он отправляет обратно данные только над удаленной строкой и ничего под удаленной строкой.Несмотря на то, что в пользовательском интерфейсе все равно отображаются все строки выше и ниже удаленной строки.

Пример. Допустим, если я загружу 3 документа и удалу средний, он удалит строку из таблицы.но когда я нажимаю кнопку загрузки, я получаю только первый ряд.

Но если я удалю последнюю строку, 3-й документ, тогда я вернусь выше 2-х документов должным образом в моем действии кнопки Загрузить.

Заранее благодарен за вашу помощь

код JavaScript:

function removeDocument(selector) {    
    $(selector).closest('tr').remove();
}

HTML-код:

 @using (Ajax.BeginForm("Upload", "MatterFiling", new AjaxOptions { HttpMethod = "POST", OnSuccess = "SuccessUploadDocument", OnFailure = "OnUploadFailure" }))
    {

        <table class="table table-bordered" id="DocumentTable">
            <thead>
            <tr>
                <th><span class="reqAsterisk">* </span>Document Title</th>               
                <th></th>
            </tr>
            </thead>
            <tbody>
                @for (int i = 0; i < Model.Count(); i++)
                {
                    <tr>
                        <td style="width: 50%; display:none" class="nr" >                            
                            @Html.TextAreaFor(m => Model.FileName, htmlAttributes: new { @class = "form-control dmm-autoresize", @rows = "1" })                            
                        </td>
                        <td>
                            <a style="color:red; cursor:pointer" onclick="removeDocument(this)">
                                <i class="far fa-trash-alt"></i>
                            </a>
                        </td>
                    </tr>
                }
            </tbody>
        </table>
        <input type="submit" name="UploadButton" value="Upload" id="UploadDocsButton" class="btn btn-primary"/> 
    }

Это после удаления строки

Это перед удалениемстрока

1 Ответ

0 голосов
/ 28 марта 2019

если вы используете форму, значит, вы обновили форму, вы также можете попробовать назвать имя типа ввода с помощью массива, например username [].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...