Динамический javascript с бритвенными страницами

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

У меня есть переменная - "счетчик"

@{
    ViewBag.Title = "Create";
    var counter = 0;

}

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

<div class = "form-group">


            <button class = "control-label col-md-2" id = "btnAddFieldTwo">Add Question with Multiple Answers</button>

            <div class = "col-md-10">

                @using (Html.BeginForm())
                {
                    @Html.AntiForgeryToken()

                    <div id = "fields2"></div>

                }


                <div style = "color:blue"><b>Data:</b> @ViewBag.Data</div>
                <!-- JS includes -->
                <script src = "//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

                <script type = "text/javascript">

                $(document).ready(function () {
                    var $fields = $('#fields2');

                    $('#btnAddFieldTwo').click(function (e) {
                        e.preventDefault();
                        @{ counter++ }
                        $(' <input type = "text" class = "form-control" name = "dynamicFieldTwo">Enter the question</input><br/>@Html.TextBox("Question",@counter, new { style = "color:red" }) ').appendTo($fields);
                    });
                });

                </script>
            </div>
        </div>

Я подумал, что добавление @ {counter ++} прямо над строкой, которая добавляет динамическое текстовое поле, будет работать. Но переменная счетчика увеличивается только один раз, независимо от того, сколько раз я нажимаю кнопку. Как увеличивать счетчик при каждом нажатии кнопки?

Ваш счетчик серверный. Вам нужен счетчик сторона клиента для увеличения во время событий щелчка на стороне клиента.

David 08.12.2018 20:52

Вы можете показать мне, как?

David 08.12.2018 20:52

У меня нет под рукой точного кода, но начну с того, что посмотрим, что выводит @Html.TextBox("Question",@counter, new { style = "color:red" }) в исходном коде страницы. Как счетчик используется в этом выводе? В своем коде JavaScript реплицируйте этот вывод, увеличивая значение счетчика.

David 08.12.2018 20:53

@ Html.TextBox ("Question", # HERE #, new {style = "color: red"}) ---- как мне поместить туда переменную JavaScript, она называется counter? - ставлю <script> int counter = 0; </script> вверху моей страницы и чуть выше печати типа ввода я помещаю counter ++;

David 08.12.2018 20:56

Вы не помещаете туда переменную JavaScript, это код C#. Возможно, вам может потребоваться начать с некоторого базового понимания разницы между кодом на стороне клиента и кодом на стороне сервера. Этот вопрос, хотя и в PHP, демонстрирует концепцию очень канонически: stackoverflow.com/q/13840429/328193 Серверный язык не важен, здесь концепция точно такая же. Что вам нужно сделать, так это полностью управлять страницей в клиентском коде. Итак, вам нужно начать изучать, как выглядит ваш клиентский код. Начиная с того, что выводит на страницу @Html.TextBox().

David 08.12.2018 20:58
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
5
216
0

Другие вопросы по теме