Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/40: Рейтинг темы: голосов - 40, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43

Как передать значение поля input в ajax

17.02.2020, 20:42. Показов 8950. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Есть код
В двух словах, это отзывы на сайте.
Есть поле textarea где пишут отзывы. Как передать этот отзыв из поля с помощью ajax в контроллер (yii2) ???

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<form id="komment">   
    <!-- <form method="get" action="<?= yii\helpers\Url::to(['komment/komment' ]) ?>"> -->
                    <div class="komment">   
                    
                    <center><p><h5>Ваши комментарии</h5></p>
                    
                     <?php //$login = $users->username ?>
                      
                     <p><textarea  style="max-width:380px;height:60px;resize:vertical" maxlength="150" name="komment" id ="kom" > </textarea></p>
                      
                      
    <script type="text/javascript">
    
      var komm = {
        kom: $('input[name=komment]').val()
    };
 
    
                      $.ajax({
        type: 'POST',
        url: 'komment/komment', // урл вставьте свой, этот для примера
        dataType: 'text',
        data: {
            komment:komm,
            _csrf: '<?=Yii::$app->request->getCsrfToken()?>'
        },
        success: function(rate) {
            alert("Спасибо за отзыв");
        },
        error: function (exception) {
            console.log(exception);
        }
    });
    </script>
                 <p> <input type = "submit" class="btn btn-default" value="Отправить комментарий"> </p></center>
                    </div>
    </form>
Так ajax не передает данные из поля. Что интересно, если в data { komment: здесь написать любую цифру}, то она прекрасно передается и все работает и пишеться в БД как надо. Т.е. ajax работает. Вопрос как передать ajax-у текст из поля textarea ???
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2020, 20:42
Ответы с готовыми решениями:

Как передать значение со span в input?
Всем добрый день! Задача такова. Есть колькулятор услуг, нужно чтобы общая сумма отправлялась в сообщение на почту. Все данные с формы...

Через ajax в url:'ajax.php', нужно передать одну переменную, и значение radio кнопки
Как значение radio передать я разобрался, а вот как еще переменную со страницы кинуть в url: ajax.php Всем спасибо

Как передать значение из текстового поля в функцию?
Здравствуйте. Недавно начал изучать PHP и пробую работать с формами. Написал простую страничку, которая по введенной мощности...

19
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 20:56
что у вас в строчках 14-16? где у вас input с name=komment? у вас textarea name=komment.
эти строчки по ходу дела не нужны.
24 строчку попробуйте переписать так
JavaScript
1
komment: $('#komment').val(),
если что не получится пишите
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:01  [ТС]
А как в 15 строчку вписать textarea вместо input ? Так и написать ?
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:02
да их совсем удалите. 24 измените как написано
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:03  [ТС]
Изменил. Не работает ((
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:07
сейчас заработает. там похоже $ переопределяется.
тогда 24 оставляйте, как была
JavaScript
1
komment:komm,
а вместо 14-16 строчек пишем:
JavaScript
1
komm = $('#komment').val();
попробуйте так
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:10  [ТС]
тут я так понимаю просто надо как то "взять" текст написанный в textarea и присвоить ему переменную . А вот как ?

потому что если в 24 строке пишешь например
komment: 5, то отлично передается цифра 5
или komment: 'komm',(в кавычках), то передается komm.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:11
правильно рассуждаете
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:13  [ТС]
Не работает. (((
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:15
что в текстовом поле textarea?
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:18  [ТС]
Уже все перепробовал. Не хочет и все тут.

Добавлено через 31 секунду
Отзывы о сайте. Простой текст.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:24
у вас нет обработки нажатия кнопки. данные не передаются в js. сейчас изменю ваш скрипт
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:26  [ТС]
Ну я писал что если в komment вставить просто цифру то все работает. Или это как то связано ?
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:37
Лучший ответ Сообщение было отмечено Sarmetr как решение

Решение

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

Добавлено через 8 минут
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<form id="komment">   
<!-- <form method="get" action="<?= yii\helpers\Url::to(['komment/komment' ]) ?>"> -->
    <div class="komment">   
    <center><p><h5>Ваши комментарии</h5></p>
    <p><textarea  style="max-width:380px;height:60px;resize:vertical" maxlength="150" name="komment" id ="kom" > </textarea></p>
 <p> <input type = "submit" class="btn btn-default" value="Отправить комментарий" id="message"> </p></center>
    </div>
</form>               
<script type="text/javascript">
$(document ).ready(function() {
    $("#message").click(function(){
        $.ajax({
            type: 'POST',
            url: 'komment/komment',
            dataType: 'text',
            data: {
                komment:$('#kom').val(),
                _csrf: '<?=Yii::$app->request->getCsrfToken()?>'
            },
            success: function(rate) {
                alert("Спасибо за отзыв");
            },
            error: function (exception) {
                console.log(exception);
            }
        });
        return false; 
    });
});                      
</script>
1
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:46  [ТС]
Заработало. Ваши знания поражают. Я вот в JS пока не очень. Спасибо большое.

Добавлено через 1 минуту
Заработало. Ваши знания JS меня поражают. Я вот пока не очень в JS(( Спасибо большое.

Добавлено через 1 минуту
А как передать еще одну ГОТОВУЮ переменную через этот же ajax ?
Переменная вида $model->login.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 21:50
а откуда получаете эту переменную- она ж из php наверно?
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 21:54  [ТС]
Ну да их PHP

Добавлено через 1 минуту
HTML5
1
<h5>Логин: <?= $users->username ?></h5>
Вот она. Хочу записать ее в туже таблицу отзывов, чтоб знать кто именно оставил отзыв. Как то так.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 22:02
тогда сделайте так:
HTML5
1
<h5>Логин: <span id='userlogin'><?= $users->username ?></span></h5>
а data так перепишите:
JavaScript
1
2
3
4
5
data: {
    komment:$('#kom').val(),
    login:$('#userlogin').text(),
     _csrf: '<?=Yii::$app->request->getCsrfToken()?>'
},
0
0 / 0 / 0
Регистрация: 05.02.2020
Сообщений: 43
17.02.2020, 22:08  [ТС]
Отлично все работает. Еще раз огромное спасибо
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
17.02.2020, 22:12
желаю успехов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.02.2020, 22:12
Помогаю со студенческими работами здесь

Передать значение в input
Здравствуйте форумчане! У меня проблемка с input, Ладно сразу к делу. 1. Есть 2 таблицы 1) user - id_u, login, pass, ...

Передать значение из input
Есть форма: &lt;form id=&quot;authf&quot; action=&quot;&quot;&gt; Введите имя &lt;input type=&quot;text&quot; name=&quot;text&quot; value=&quot;a1&quot;&gt; Введите email &lt;input...

Как передать данные из input в другой input
как передать дание из input в другой input &lt;form method=&quot;post&quot; action=&quot;test3.php&quot; target=&quot;_blank&quot;&gt; &lt;input id=&quot;name&quot;...

Передать в Input значение из PHP
Всем привет. Поиск курил, язык почти не знаю. Код: &lt;?php foreach($usp_options as $categoryId) { $category =...

Как из input type="text" передать значение в поле БД с типом date?
Доброе утро, всех с наступившим 2018 годом! Прошу Вашей помощи, с утра по раньше))) Нашла красивый календарик...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru