поле ввода возвращает

#javascript

Вопрос:

Я не уверен, почему поле ввода возвращает пустую строку. Даже если я что-то напишу в поле ввода, как я могу это исправить? Любая помощь будет признательна!

    <div class="comment-form">
         <input type="number" name="postId" value="@post.Id" required hidden />
         <input type="text" name="theComment" id="thisIsTheComment" class="comment-input" placeholder="Add a comment..." rows="1" required/>
         <button type="submit" class="btnaddcomment color" id="btn_comment" onclick="AddComment(@post.Id, this)" ><i class="fas fa-paper-plane"></i></button>
    </div>

function AddComment(postId, ctrl) {
    ctrl.parentElement.remove();
    var someComment = document.getElementById("thisIsTheComment").value;
    console.log(someComment)
    var baseUrl = "https://localhost:44374/Comment/AddComment";
    var data = {
        postId: postId,
        theComment: someComment
    };
    axios.post(baseUrl, data)
        .then(function (response) {
            console.log(response);
        })
        .catch(function (error) {
        })
}
 

Комментарии:

1. Есть ли какая-нибудь вероятность, что идентификатор thisIsTheComment дублируется в вашем документе?

2. Нуп. Я изменил идентификационное имя на всякий случай раньше.

Ответ №1:

Это может быть вызвано тем, что вы удаляете элемент вместе с его родительским элементом.

Если вы удалите строку ctrl.parentElement.remove(); или вызовете ее позже , код должен работать должным образом.