Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Множественный выбор.

Здравствуйте, из-за почти полного незнания javascript обращаюсь за помощью к вам. Цель следующая: есть таблица:
<table>
<tr>
<td id="1" data-select="1">1</td>
<td  id="1" data-select="2">2</td>
<td  id="1" data-select="3">3</td>
</tr>
<tr>
<td id="2" data-select="1">1</td>
<td  id="2" data-select="2">2</td>
<td  id="2" data-select="3">3</td>
</tr>
<table>

Число строк может меняться. Число столбцов постоянное значение. Каждая ячейка таблицы представляет собой элемент выбора. В каждой строке можно выбрать только 1 из N элементов, либо не выбирать ничего. Выбор осуществляется нажатием на ячейку, и показывается допустим сменой фона ячейки. Все что навыбирал юзер должно сохраняться в массив или как-то еще, чтоб по нажатию кнопки сохранить, эти данные отправить на другую страницу, где средствами php уже будут происходить манипуляции с этими данными. Также если юзер захочет изменить свои выборы, это нужно будет как-то подгрузить с тем что юзер уже выбрал до этого.
Были мысли запихнуть чекбоксы в каждую ячейку и изменить их вид, но и тут без javascript никуда.
А может и вовсе есть готовые варианты для такого множественного выбора?
Ответ:
Сообщение от armolov
то есть в конечном итоге будет непонятно к какой строке привязан выбор
опачки!!! чем вам индекс массива то не угодил???
Вопрос: Java Script, совместная работа textarea с select option

Прошу помочь, сам новичок в языке java script, буду благодарен за помощь
есть форма, на ней 2 элемента, один из них textarea(текстовое поле), а в другой элемент select option, в textarea уже есть значение в value(любой текст), так вот, необходимо реализовать, чтобы при выборе select любого option, в textarea добавлялось значение уже к существующему value(значению) через точку с запятой, и так при каждом выборе select option добавлялось значение в текстовое поле(плюсовалось). Буду очень благодарен за помощь
на скриншоте примерно показано как должно быть
вот примерчик небольшой основного кода...
<form>
  <textarea name="textar">текст</textarea>
  <select name="sel">
     <option>1</option>
     <option>2</option>
     <option>3</option>
  </select>
</form>
Ответ:
Сообщение от Алекс_
необходимо реализовать, чтобы при выборе select любого option, в textarea добавлялось значение уже к существующему value(значению) через точку с запятой
И в чем собственно проблема?
Обрабатывай событие onchange у селект... Бери его значение и добавляй...
Вопрос: Отправка формы только после выбора select

Доброго времени суток, необходимо организовать поиск без перезагрузки страницы с выбором категории где искать, в данном случае категорией является столбец в БД. Суть в том что бы сначала selectом выбрать столбец для поиска а затем в инпуте вводить сам запрос для поиска.

сейчас все работает на инпуте, то есть сам инпут
<input type="text" class="search_input" name="search" id="search" class='search_box'/>


ajax запрос

<script type="text/javascript">
$(function(){
  $("#search").keyup(function(){
     var search = $("#search").val();
     $.ajax({
       type: "POST",
       url: "search_ajax.php",
       data: {"search": search},
       cache: false,                                 
       success: function(response){
          $("#resSearch").html(response);
       }
     });
     return false;
   });
});

</script>


ну и сам php обработчик

if (isset($_POST['search']))  {
		$s = $_POST['search'];
	echo $s;
}

$query_to_db = mysql_query("SELECT * FROM equipment WHERE client_name LIKE '%$s%'");


и все работает отлично, то есть при вводе на любое изменение в input выводится соответствующее значение из таблицы "equipment" и столбца "client_name", но нужно динамически выбирать поле selectoм, что бы например было так:

<select class="search_in" name="search_in" id="search_in"> 
        <option value='' selected='selected'>Искать по</option>
        <option VALUE="id">Номер</option>
        <option VALUE='status'>Статус</option>
        <option VALUE='client_name'>Имя клиента</option>
	<option VALUE='client_tel'>Телефон клиента</option>
</select>


и уже соответственно php обработчик будет выглядеть:

if (isset($_POST['search_in']))  {
	$s_i = $_POST['search_in'];
	echo $s_i;

}

if (isset($_POST['search']))  {
		$s = $_POST['search'];
	echo $s;
}

$query_to_db = mysql_query("SELECT * FROM equipment WHERE $s_i LIKE '%$s%'");


а ajax примерно!!!! вот так:

<script type="text/javascript">
$(function(){
  $("#search").keyup(function(){
     var search = $("#search").val();
     $.ajax({
       type: "POST",
       url: "search_ajax.php",
       data: {"search": search},
       cache: false,                                 
       success: function(response){
          $("#resSearch").html(response);
       }
     });
     return false;
   });
});


$(function(){
	
	
    $("#search_in").change(function(){
        $.ajax({
            type : 'POST',
            url : 'search_ajax.php',
            data : { search_in: $(this).val() },
            success: function(response){
          $("#resSearch").html(response);
       }
        });
    })
}


);

</script>


по отдельности все работает, задача в том что бы сначала выбрать значение в select, сохранить, но передавать его вместе с изменяющимся inputom. Сейчас это дело передается сразу как только тронуть или input или select, и соответственно php обработчик дает ошибку ибо не находит второго параметра, а нужно что бы select "ждал" ввода в input и передавался только вместе с ним, перелопатил много инфы, толком ничего не получилось, может кто в курсе как такое организовать?
Ответ:
Сообщение от warren buffet
Кстати



это значит скрипт будет донимать сервер при нажатии любой клавиши - стрелок, забоя и удаление.

Сделай на input. А если нужен переход с того же поля на нормальную страницу поиска - добавь keyup с единственной проверкой на keyCode==13

в этом и вся соль, что бы select выбрать, а inputom донимать сервер передавая 2 параметра сразу
Вопрос: Реализация множественного выбора товаров

Добрый день уважаемые разработчики, не подскажете как реализовать множественный выбор товара, вот у нас есть товар жидкость для парогенераторов с разным количеством никотина в каждом вкусе, нужно реализовать так чтобы пользователь мог выбрать сразу несколько пузырьков с разным количеством никотина и отправить в корзину, подскажите как реализовать подобное, буду рад любой подсказке и информации как это реализовать
Ответ: Да woocomerce

Добавлено через 10 минут
xpoince, да Woocommerce
Вопрос: Смена картинки при выборе select

Есть следующая конструкция из селектов
PHPHTML
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
<div class="variants_list">  
            <div class="selector-wrapper" id="selector-option-id-818425">
<label>Цвет</label>
<select class="single-option-selector" id="variant-select-option-0">
<option value="7982628" selected="selected">Белый</option>
<option value="7982769">Шоколад</option></select></div>
<div class="selector-wrapper" id="selector-option-id-872143">
<label>Размер спальной части</label>
<select class="single-option-selector" id="variant-select-option-1">
<option value="7818929" selected="selected">90см х 195 см</option>
<option value="7818930">100см х 195 см</option>
<option value="7818931">120см х 195 см</option>
<option value="7818932">140см  х 195см</option>
<option value="7818933">160см х 195см</option></select>
 
 
 
</div><select name="variant_id" id="variant-select" class="variant-select" style="display: one;">          
<option value="135881105" data-path="https://static-eu.insales.ru/images/products/1/5697/110671425/4566_9977_big_1_.jpg">Белый / 90см х 195 см</option>            
<option value="135881106" data-path="https://static-eu.insales.ru/images/products/1/5697/110671425/4566_9977_big_1_.jpg">Белый / 100см х 195 см</option> 
<option value="135881107" data-path="https://static-eu.insales.ru/images/products/1/5697/110671425/4566_9977_big_1_.jpg">Белый / 120см х 195 см</option> 
<option value="135881108" data-path="https://static-eu.insales.ru/images/products/1/5697/110671425/4566_9977_big_1_.jpg">Белый / 140см  х 195см</option> 
<option value="135881109" data-path="https://static-eu.insales.ru/images/products/1/5697/110671425/4566_9977_big_1_.jpg">Белый / 160см х 195см</option> 
<option value="135885905" data-path="https://static-eu.insales.ru/images/products/1/5735/110671463/b79a74d1-77c3-4d4b-bb5d-744e2192169b_1_.jpg">Шоколад / 90см х 195 см</option> 
 <option value="135885930" data-path="https://static-eu.insales.ru/images/products/1/5735/110671463/b79a74d1-77c3-4d4b-bb5d-744e2192169b_1_.jpg">Шоколад / 100см х 195 см</option> 
<option value="135885953" data-path="https://static-eu.insales.ru/images/products/1/5735/110671463/b79a74d1-77c3-4d4b-bb5d-744e2192169b_1_.jpg">Шоколад / 120см х 195 см</option> 
<option value="135885972" data-path="https://static-eu.insales.ru/images/products/1/5735/110671463/b79a74d1-77c3-4d4b-bb5d-744e2192169b_1_.jpg">Шоколад / 140см  х 195см</option> 
 <option value="135885808" data-path="https://static-eu.insales.ru/images/products/1/5735/110671463/b79a74d1-77c3-4d4b-bb5d-744e2192169b_1_.jpg">Шоколад / 160см х 195см</option>     
</select>       
</div>
 
<img id="photo-big" src="https://static-eu.insales.ru/images/products/1/6390/110164214/Тахта_черная_кожа.jpg" style="width:200px;" class="target-img" alt="">
при выборе первых 2-х третий составляется автоматически.
Есть скрипт
Javascript
1
2
3
4
5
6
$(document).ready(function(){
    $('#variant-select').on('change', function(){
    var url = $(this).find(':selected').data('path');
    $('#photo-big').attr('src', url);
  });
})
Он берет ссылку из последнего селекта и подставляет в картинку.
Проблема в следующем: в редакторе можно править только последний селект, а на сайте отображаются все кроме последнего. Нужно их как то связать скриптом что бы при изменении первых срабатывал скрипт.
Ответ: отслеживай интервалом, больше никак наверное
Javascript
1
2
3
4
5
6
7
8
var last = '';
setInterval(function(){
    var url = $('#variant-select option:selected').data('path');
    if( url != last){
        last = url;
        $('#photo-big').attr('src', url);
    }
},500);
Вопрос: При выборе select скрываются определенные div

Добрый день. При выборе опции в селекте должны скрываться определенные группы. Работает, но не корректно. Какие то div'ы скрываются, а какие то остаются.
<style>
div {
  display: block;
}
</style>
<div class="container">
  <h1 class="page-header">Продажа средств измерений</h1>
  <select class="form-control" id="CategoryTree">
    <option selected="selected" class="all active" value="0">Все дозиметры</option>
    <option value="1">Дозиметры для банков <span class="badge">2</span></option>
    <option value="2">Индивидуальная дозиметрия <span class="badge">3</span></option>
  </select>
</div>
<div class="row">
  <div id="bank">
    <h3>
       <a href="#">Дозиметр для банков 1</a>
    </h3>
    <p>Для банка</p>
  </div>
  <div id="individ">
    <h3>
       <a href="#">Индивидуальный 1</a>
    </h3>
    <p>Индивид</p>
  </div>
</div>
<div class="row">
  <div id="individ">
    <h3>
      <a href="#">Индивидуальный 2</a>
    </h3>
    <p>Индивид</p>
  </div>
  <div id="bank">
    <h3>
      <a href="#">Дозиметр для банков 2</a>
    </h3>
    <p>Для банка</p>
  </div>
</div>
<div class="row">
  <div id="individ">
    <h3>
       <a href="#">Индивидуальный 3</a>
    </h3>
    <p>Индивид</p>
  </div>
</div>

document.getElementById("CategoryTree")
.onchange = function() {
var b = {
1: "bank",
2: "individ"
  },
c = this.value,
 a;
for (a in b) document.getElementById(b[a])
.style.display = 0 == c || c == a ? "block" : "none"
};
Ответ: рони,
Спасибо большое, добрый человек! Выручил
Вопрос: Добавление элемента формы при выборе SELECT

Добрый день.

На форме есть выпадающий список. Как сделать, чтобы при выборе элемента "Другая сумма" на той же форме появлялся новый input куда эту сумму можно было ввести вручную?

<form method="post" name="form" enctype="multipart/form-data" action="/send.php">
  <select id="fils" name="price" required>
    <option value="">Укажите сумму</option>
    <option value="100">100 руб.</option>
    <option value="200">200 руб.</option>
    <option value="300">300 руб.</option>
    <option value="500">500 руб.</option>
    <option value="other">Другая сумма</option>                                                               
  </select>
</form>
Ответ:
Сообщение от orangebox
Вроде работает.
А куда оно денется!
Вопрос: Как при выборе select'a добавить текст в textarea?

Подскажите пожалуйста, как сделать, чтобы при выборе определенного select'a добавлялся текст (константа) в textarea?

P.S. прошу прощения за глупый вопрос, учусь неделю. Основы прохожу, до документа и события еще не дошел. А задачу надо решить

Спасибо.
Ответ:
Сообщение от рони
anymaxis,
Большое спасибо, добрый человек
Вопрос: Как правильно проверить выбор select?

Доброго дня всем.
Нужно чтобы при выборе определенного option добавлялся или удалялся class. Метод
$('select').on('change', function () {
      var optionSelected = $("option:selected", this);
      var valueSelected = this.value;
      if (valueSelected == '.services-slide_one') {
         $("body").addClass("test");
      } else {
         $("body").removeClass("test");
      }
    });

почему то не работает.
Подскажите как можно такое реализовать?
Ответ:
Сообщение от Nexus
Aleksanderj, опишите условие, по которому body должен класс добавляться. По-человечески.

upd. поправил пост №2
Спасибо большое!
Вопрос: Выбор select со значением полученным из базы данных

В общем php у меня получает значение из базы данных
и мне нужно что бы у меня выбрался пункт меню со значением 1 например
PHP в темплейт файлах недоступен
<script type="text/javascript" src="/templates/Default/items/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
    $('#selectpv').val(1).change();
</script>
<a class="astitle">Информация о себе</a>
<hr>

<form method="POST" enctype="multipart/form-data">
<div class="row">
    <div class="row-caption" style="width:50%;">
        <div class="row-caption-title">Кто может просматривать вашу страничку:</div>
        
    </div>
    <div class="row-field" style="width:40%;"><select id="selectpv" name="" class="sselect"><option value="0">Все пользователи</option><option value="1">Только друзья</option><option value="2">Никто</option></select></div>
</div>

</form>

Такая штука не работает.Помогите пожалуйста.
Ответ:
Сообщение от Elect
У меня есть небольшая система шаблонизатора,на маркерах({маркер} заменяет на значение)
И кто же эти маркеры заменяет?