Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Найти число в строке и вывести его (https://javascript.ru/forum/misc/59909-najjti-chislo-v-stroke-i-vyvesti-ego.html)

nikto93i7 02.12.2015 20:22

Найти число в строке и вывести его
 
Добрый вечер форумчане!))

помогите пожалуйста решить одну задачку... а то уже что-то варианты закончились :-?

есть вот такая часть кода
<select id="charge_platform_car" class="option_menu_style_car" size="0">
									<option class="car3_5">Charge 3.5t <span>32</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>42</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>52</span> kWh</option>
										/**/
										<option class="car5_5">Charge 5.5t <span>32</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>42</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>52</span> kWh</option>
										/**/
										<option class="car9_5">Charge 9.5t <span>52</span> kWh</option>
										<option class="car9_5">Charge 9.5t <span>62</span> kWh</option>
										/**/
										<option class="car26">Charge 26t <span>60</span> kWh</option>
										<option class="car26">Charge 26t <span>62</span> kWh</option>
								</select>


как мне достать все числа в теге <span>?

буду благодарен за помощь :thanks:

рони 02.12.2015 20:35

nikto93i7,
нет у вас никаких span -- option может содержать только текст

рони 02.12.2015 20:44

nikto93i7,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
 <select id="charge_platform_car" class="option_menu_style_car" size="0">
									<option class="car3_5">Charge 3.5t <span>32</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>42</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>52</span> kWh</option>
										/**/
										<option class="car5_5">Charge 5.5t <span>32</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>42</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>52</span> kWh</option>
										/**/
										<option class="car9_5">Charge 9.5t <span>52</span> kWh</option>
										<option class="car9_5">Charge 9.5t <span>62</span> kWh</option>
										/**/
										<option class="car26">Charge 26t <span>60</span> kWh</option>
										<option class="car26">Charge 26t <span>62</span> kWh</option>
								</select>
<script>
var a = [].map.call( document.querySelectorAll('#charge_platform_car option'), function(el) {
       return el.text.match(/\d+(?=\s)/)
});
alert(a)
</script>
</body>

</html>

ruslan_mart 02.12.2015 20:46

nikto93i7, что-то мне подсказывает, что кто-то рукож*пием занимается. :) У Вас же что-то генерирует эти options, там и подставляйте значение сразу в data-атрибут. ;)

nikto93i7 03.12.2015 10:57

рони - спасибо тебе большое!)

Ruslan_xDD - да, я немного рук*жоп :yes:

nikto93i7 03.12.2015 11:09

рони, хотел еще один момент спросить...

а как сделать чтоб только выводило число активного пункта меню?

рони 03.12.2015 11:19

nikto93i7,
а value на сервере присвоить option никак?

рони 03.12.2015 11:22

nikto93i7,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
 <select id="charge_platform_car" class="option_menu_style_car" size="0" onchange="alert(this.value)">
									<option class="car3_5">Charge 3.5t <span>32</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>42</span> kWh</option>
										<option class="car3_5">Charge 3.5t <span>52</span> kWh</option>
										/**/
										<option class="car5_5">Charge 5.5t <span>32</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>42</span> kWh</option>
										<option class="car5_5">Charge 5.5t <span>52</span> kWh</option>
										/**/
										<option class="car9_5">Charge 9.5t <span>52</span> kWh</option>
										<option class="car9_5">Charge 9.5t <span>62</span> kWh</option>
										/**/
										<option class="car26">Charge 26t <span>60</span> kWh</option>
										<option class="car26">Charge 26t <span>62</span> kWh</option>
								</select>
<script>
var a = [].forEach.call( document.querySelectorAll('#charge_platform_car option'), function(el) {
       el.value = el.text.match(/\d+(?=\s)/)
});

</script>
</body>

</html>

nikto93i7 03.12.2015 11:23

ну да) спасибо еще раз!


Часовой пояс GMT +3, время: 11:54.