Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Добавить option в select при помощи js (https://javascript.ru/forum/css-html/66844-dobavit-option-v-select-pri-pomoshhi-js.html)

flyte 13.01.2017 18:30

Добавить option в select при помощи js
 
Здравствуйте! Подскажите пожалуйста. Как при помощи скрипта в select
<select name="search" class="one">
добавить option
<option value="teo" selected="">teo</option>
?? Пользуюсь greasemonkey

рони 13.01.2017 18:44

flyte,
var s =  document.querySelector('.one').options;
s[s.length]= new Option('teo','teo',true);

flyte 16.01.2017 10:53

Цитата:

Сообщение от рони (Сообщение 440624)
flyte,
var s =  document.querySelector('.one').options;
s[s.length]= new Option('teo','teo',true);

большое спасибо!

flyte 20.01.2017 14:09

еще такой вопрос, реально из url открытой страницы, вида
http://qwerty.com/index.cgi?id=12345;name=winter

получить отдельно id, name и вставить их значения в input'ы с неймами one и two соответственно, как такое реализовать?

рони 20.01.2017 14:14

flyte,
выбрать один из тысяч парсеров url - получить значение из window.location и вставить в value нужных input

flyte 20.01.2017 14:24

Цитата:

Сообщение от рони (Сообщение 441635)
flyte,
выбрать один из тысяч парсеров url - получить значение из window.location и вставить в value нужных input

в теории я понял, но как на практике это можно реализовать? помогите пожалуйста, очень нужно

ksa 20.01.2017 14:27

Цитата:

Сообщение от рони
выбрать один из тысяч парсеров url

Как вариант... :D
var url='http://qwerty.com/index.cgi?id=12345;name=winter';
alert(url.match(/[^?;]+=[^;]*/g));

flyte 20.01.2017 14:30

Цитата:

Сообщение от ksa (Сообщение 441641)
Как вариант... :D
var url='http://qwerty.com/index.cgi?id=12345;name=winter';
alert(url.match(/[^?;]+=[^;]*/g));

а как мне в url добавить текущий url страницы, так как он постоянно меняется?

ksa 20.01.2017 14:35

Цитата:

Сообщение от flyte
а как мне в url добавить текущий url страницы

Так тебе же уже написали выше
Цитата:

Сообщение от рони
получить значение из window.location

Т.ч. смотри
http://javascript.ru/window-location

flyte 20.01.2017 14:37

все, туплю, спасибо)

рони 20.01.2017 14:40

flyte,
<!DOCTYPE html>

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

  <script>

    window.addEventListener('DOMContentLoaded', function() {
     var url = 'http://qwerty.com/index.cgi?id=12345;name=winter' // var url = window.location;
     var d = url.match(/id=([^;]+)/);
     var w = url.match(/name=([^;]+)/);
     d = d ? d[1] : "";
     w = w ? w[1] : "";
     document.querySelector('[name="one"]').value = d;
     document.querySelector('[name="two"]').value = w;
        });
  </script>
</head>

<body>
<input name="one" type="text">
<input name="two" type="text">
</body>
</html>

flyte 23.01.2017 10:39

Цитата:

Сообщение от рони (Сообщение 441645)
flyte,
<!DOCTYPE html>

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

  <script>

    window.addEventListener('DOMContentLoaded', function() {
     var url = 'http://qwerty.com/index.cgi?id=12345;name=winter' // var url = window.location;
     var d = url.match(/id=([^;]+)/);
     var w = url.match(/name=([^;]+)/);
     d = d ? d[1] : "";
     w = w ? w[1] : "";
     document.querySelector('[name="one"]').value = d;
     document.querySelector('[name="two"]').value = w;
        });
  </script>
</head>

<body>
<input name="one" type="text">
<input name="two" type="text">
</body>
</html>

Спасибо большое!)

flyte 23.01.2017 11:06

не могу понять, если url прописан руками, то работает, если ставлю window.location, то перестает вообще что либо выводить

рони 23.01.2017 11:10

flyte,
так посмотрите чему равно window.location

flyte 23.01.2017 11:18

Цитата:

Сообщение от рони (Сообщение 442007)
flyte,
так посмотрите чему равно window.location

если сделать alert(url), то выдает мою текущую ссылку, если делаю alert(url.match(/[^?;]+=[^;]*/g)), вообще ничего не выдает, при чем если я пропишу текущую ссылку вместо window.location, то все матчит нормально

рони 23.01.2017 11:23

flyte,
можно только гадать ... или ссылку можно в личку


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