Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Открыть новую тему     Написать ответ в эту тему

Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D

Цитата:
Прописана замена букв под ударением в составе кириллица - на прописную А

1) тема по регуляркам есть отдельная.
2) почему это он правильный? посмотрите консоль ошибок браузера.

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 20:57 24-04-2023
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
К примеру, на скриптовом языке AHK шаблон работает так:

Код:
RegExReplace(str, "i)([а-яё])?\Ká(?=(?(1)|[а-яё]))", "А")

Поэтому наверно шаблон нужно приспособить именно к js?
 
По-видимому, у js проблема с интерпретацией "\K" и "?(1)"

Всего записей: 1368 | Зарегистр. 05-04-2010 | Отправлено: 22:17 24-04-2023 | Исправлено: D1D1D1D, 22:19 24-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D

Цитата:
К примеру, на скриптовом языке AHK шаблон работает так:

у каждого языка есть особенности.

Цитата:
По-видимому, у js проблема с интерпретацией "\K" и "?(1)"

да
 
я не знаю, что такое \K и ?(1)
 
ps: javascript регулярные выражения

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 22:21 24-04-2023 | Исправлено: Mavrikii, 22:21 24-04-2023
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 

Цитата:
я не знаю, что такое \K и ?(1)

Если ввести шаблон тут - https://regex101.com/ - кое-что описывается.
 
Так заработало:
 

Код:
   obj.value = obj.value.replace(/([а-яё])?á(?=($|[а-яёА-ЯЁ]))/gi, '$1А');

Всего записей: 1368 | Зарегистр. 05-04-2010 | Отправлено: 22:23 24-04-2023
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
да, но не автоматически - файл нужно выбрать.  

 
Спасибо огромное, выручили!
Будем пробовать, чтобы ткнуть носом - одного "пассионарного всезнайку" и по совместительству начальника отдела. Постоянно твердит одно и то же, что в JS - вообще, запрещена работа с файлами - политикой безопастности. Если бы мол такое было, то любой хакер-школьник, зайдя на ваш браузер с помощью какой-нибудь хитрости - делал бы на вашем компьютере - все что захочется. Одним словом - заладил, что мол, на Node.JS - можно (т.к. серверная часть), на Python - можно, а на JS - нельзя.

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 00:56 25-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd
современный JS позволяет гораздо больше.
но ограничение есть - как и сказал, файл нужно выбрать вручную.
https://web.dev/read-files/
https://learn.javascript.ru/file

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 01:14 25-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер!
 
Необходимо передать на сервер без обновления страницы и без Сабмит информацию checkbox.  
<input type="checkbox" id="checkboxOne" >
 
save.php?id=id_checkbox&znak=+1 (или -1).
 
Ставим флажок - уходит save.php?id=id_checkbox&znak=+1
Снимаем флажок - уходит save.php?id=id_checkbox&znak=-1
 
Вместо + и минус можно использовать любые другие знаки.
 
    <script>
        $(document).ready(function() {
            $.ajax('save.php?id=id_checkbox&znak=+1');
        });
    </script>
 
Этот код, конечно же, не работает, надо что-то другое. Какой тут нужен код JS? Подскажите, плз!

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 21:48 29-04-2023 | Исправлено: Vladsvn, 21:50 29-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Этот код, конечно же, не работает, надо что-то другое

потому что работает только когда загружается страница, а нужно либо когда изменяется чекбокс, либо происходит что то еще.
https://jsfiddle.net/Lqbf5y0t/

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 22:01 29-04-2023
pacnik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Такой вопрос, имеем форму
 
<input type="text" id="zeroInput1" value="петя ">
 
<input type="text" id="zeroInput2" value="вася">
 
<a  onclick="javascript:cop(1); "> мас 1 </a>
<a  onclick="javascript:cop(2); "> мас 2 </a>
 
function cop(id){
 
let aaa = 'zeroInput' + id;
    
let string = aaa.value;  
 
 alert (string);
            
        
 }
 
Функция не работает в консоль лог получаем ошибку - string is undefined. Если же сразу же написать let string = zeroInput1.value,  то все нормально. Прошу помочь.
 

Всего записей: 39 | Зарегистр. 12-02-2007 | Отправлено: 15:21 04-05-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pacnik
 
zeroInput1.value и 'zeroInput1'.value это не одно и то же.
 
Используйте
let string = document.getElementById(aaa).value;

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 16:18 04-05-2023
pacnik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо

Всего записей: 39 | Зарегистр. 12-02-2007 | Отправлено: 16:40 04-05-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно передать на сервер простановку и снятие флажка на чекбоксе. Я это делаю так:
 
<div class="bx_block">      
<input  type="checkbox" id="sb-1"/>
</div>
 
<script>
let arResult;
document.getElementById('sb-1').onchange = fun;
function fun(){
if (document.getElementById('sb-1').checked == true)
{
    arResult = 'checked';    
}
else
{
    arResult = 'zero';    
}
let requestToServer = new XMLHttpRequest();
requestToServer.open('POST', '89.php', false);
requestToServer.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requestToServer.send('arResult=' + arResult);
}
</script>
 
Нормально все работает.
 
Но как быть, если чекбоксов несколько, например три?
 
<div id="bx_block" class="bx_block">      
  <input  type="checkbox" class="ajax-checkbox" id="sb-1"/>
  <input  type="checkbox" class="ajax-checkbox" id="sb-2"/>
  <input  type="checkbox" class="ajax-checkbox" id="sb-3"/>
</div>
 
В этом случае нужно передать не только состояние arResult, но и id чекбокса.
 
Тут код нужен какой-то совсем другой. Как это сделать?

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 18:38 06-05-2023 | Исправлено: Vladsvn, 19:22 06-05-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Тут код нужен какой-то совсем другой. Как это сделать?


Код:
document.addEventListener("change", (e) => {
    let obj = e.target;
    if (obj.classList.contains('ajax-checkbox')) {
        let requestToServer = new XMLHttpRequest();
        requestToServer.open('POST', '89.php', false);
        requestToServer.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        requestToServer.send(obj.id + '=' + (obj.checked ? 'checked' : 'zero'));
    }
})

 
проще отправлять в JSON формате. и вместо checked или zero можно отправлять 1 или 0

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 20:29 06-05-2023 | Исправлено: Mavrikii, 20:31 06-05-2023
pacnik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
function cor(id){
 
let message = ' кккк фффф яяя 9007282821 фываф 333  ';
 
message = message.replace(/\s+/g, " "); // удаляем лишние пробелы
 
//нужно из текста извлечь цифры 10 шт, т.е.  message1 = '9007282821'
message  =  message.replace(/[^0-9]/g,"");    не получается  вытаскивает все цифры которые только есть
 
//оставшийся текст поместить в message2 =  'кккк фффф яяя  фываф 333'
 
 
   
}

Всего записей: 39 | Зарегистр. 12-02-2007 | Отправлено: 17:05 18-05-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pacnik

Цитата:
message  =  message.replace(/[^0-9]/g,"");    не получается  вытаскивает все цифры которые только есть

так вытащите сначала цифры, а потом их замените.
.match(/\d{10}/g)
а потом
.replace(/\d{10}/g, '')

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 19:44 18-05-2023
pacnik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii  большое спасибо

Всего записей: 39 | Зарегистр. 12-02-2007 | Отправлено: 14:47 19-05-2023
Demon

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пытаюсь подправить небольшой скрипт, который обрабатывает форму. В тексте получаю значение элемента:
name: $('#name').val()
соответственно в html <input name="name" type="text" id="name" title="Ваше имя" />
Все работает. А как быть с переключателем? Там идет несколько строк. Задал всем одинаковый id, Получаемое значение не меняется.

Всего записей: 583 | Зарегистр. 03-10-2001 | Отправлено: 16:31 05-07-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Demon

Цитата:
А как быть с переключателем? Там идет несколько строк. Задал всем одинаковый id, Получаемое значение не меняется.

стандартный или какой то визуальный?
 
если хотите собрать данные - есть .serialize() для формы.

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 17:10 05-07-2023 | Исправлено: Mavrikii, 17:10 05-07-2023
Demon

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
стандартный или какой то визуальный?

 
Стандартный
  <input class="form-check-input" type="radio" value="1" name="tt" id="tt">
  <label class="form-check-label" for="flexRadioDefault1">
    <p><a href="tarif_free.html" target="_blank">Бесплатный</a></p>
  </label>
  <input class="form-check-input" type="radio" value="2" name="tt" id="tt" checked>
  <label class="form-check-label" for="flexRadioDefault2">
    <p><a href="tarif_optimal.html" target="_blank">Оптимальный</a></p><br>
  </label>
 
Мне бы хотелось получить tt, а зависимости от переключателя.

Всего записей: 583 | Зарегистр. 03-10-2001 | Отправлено: 19:07 05-07-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Demon
что значит "независимо"? id вообще то должен быть уникальный на странице.
 
$('input[name="tt"]:checked').val();

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 19:49 05-07-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru