Обработка нескольких версий отправки одной формы с помощью узла - PullRequest
0 голосов
/ 02 мая 2018

Прежде всего, почему это не дубликат: я спрашиваю об обработке нескольких версий представления с использованием Node. Я не нашел ни одного поста об этом.

На основе это Я построил это:

<form method="post">
    <% for(let i = 0; i < websites.length; i++){ let website = websites[i]; %>
    <fieldset>
        <label for="website<%= i %>" class="col-sm-2">Website <%= i + 1 %></label>
        <input class="website" name="website<%= i %>" id="website<%= i %>" value="<%= website %>" type="text"/>
        <span style="color: red"><%= errorMsgs[i] %></span>
        <a href="/websites/edit/<%= i %>" class="btn btn-info">Edit</a>
        <a href="/websites/delete/<%= i %>" class="btn btn-danger confirmation hide">Delete</a>
        <div id="removeBtn" class="btn btn-danger confirmation">Remove</div>
    </fieldset>
    <% } %>
    <input type="submit" class="btn btn-primary col-sm-offset-2" value="Generate a report" name="generateReport"
           data-toggle="modal" data-target="#exampleModal">
    <input type="submit" class="btn btn-primary col-sm-offset-2" value="Save websites" name="saveWebsites">
    <!-- Modal -->
</form>

Я использую EJS, но я не думаю, что это имеет значение в этом случае.

А это мой бэкэнд:

console.log(req.generateReport);
console.log(req.saveWebsites);
if(req.generateReport!==null){
    console.log('report');
    return 0;
}
else if(req.saveWebsites!==null){
    console.log('save');
    return 0;
}

Я пытался использовать ответ, на который я поместил ссылку ранее, но оказалось, что свойства req.saveWebsites и req.generateReport не определены ... Так как мне справиться с этим с помощью Node?

Я не хочу использовать AJAX, потому что он мне нужен для работы с отключенным JS.

1 Ответ

0 голосов
/ 11 мая 2018

В итоге я просто сделал 2 варианта формы. Один с AJAX, а другой без. Я не смог найти никакого решения, но я оставлю тему открытой, если кто-то найдет ответ.

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