Вход

Просмотр полной версии : Как найти нужный элемент?


Mukhtar
22.05.2013, 12:17
Добрый день!

Подскажите как мне найти <option value='some_id'>some_text</option>, и выбрать с помощью jquery?

Например у нас переменная $_GET['id']=100

и есть селект с id='items'


<select id='items'>
<option value='0'></option>
<option value='20'>Шкаф</option>
<option value='44'>Диван</option>
<option value='100'>Телевизор</option>
<option value='115'>Кресло</option>
<option value='227'>Сервант</option>
</select>

jsru_
22.05.2013, 12:48
я обычно это делаю на стороне сервера при формировании селекта, через jquery можно:
$("option[value='100']").attr("selected", "selected");
ну или что-то в этом духе

рони
22.05.2013, 13:08
Mukhtar,
:cray:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<select id='items'>
<option value='0'></option>
<option value='20'>Шкаф</option>
<option value='44'>Диван</option>
<option value='100'>Телевизор</option>
<option value='115'>Кресло</option>
<option value='227'>Сервант</option>
</select>
<script>
var $_GET = {};
$_GET['id']= 100;
$('#items').val($_GET['id'])
</script>
</body>
</html>

Mukhtar
22.05.2013, 14:09
Mukhtar,
:cray:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<select id='items'>
<option value='0'></option>
<option value='20'>Шкаф</option>
<option value='44'>Диван</option>
<option value='100'>Телевизор</option>
<option value='115'>Кресло</option>
<option value='227'>Сервант</option>
</select>
<script>
var $_GET = {};
$_GET['id']= 100;
$('#items').val($_GET['id'])
</script>
</body>
</html>

Я не совсем понял. Что это такое? ))

ksa
22.05.2013, 14:51
Что это такое?
Это рабочий пример выбора элемента селекта по значению
$_GET['id']= 100;

рони
22.05.2013, 15:02
Я не совсем понял. Что это такое? ))
Подскажите как мне найти <option value='some_id'>some_text</option>, и выбрать с помощью jquery?
код выше установка селекта в значение 100, если вам нужен просто опцион со значением 100, то код дал jsru_,
$("option[value='100']")
или
$("#items option[value='"+$_GET['id']+"']")

Mukhtar
22.05.2013, 15:47
код выше установка селекта в значение 100, если вам нужен просто опцион со значением 100, то код дал jsru_,
$("option[value='100']")
или
$("#items option[value='"+$_GET['id']+"']")

[JS]
$("#items option[value='"+$_GET['id']+"']").trigger('change');
[JS]
не поддается ((

Mukhtar
22.05.2013, 16:08
код выше установка селекта в значение 100, если вам нужен просто опцион со значением 100, то код дал jsru_,
$("option[value='100']")
или
$("#items option[value='"+$_GET['id']+"']")

понял... Дело в том, что я из селекта делаю ссылки. То есть объект на самом деле уже не селект, а обычная ссылка вида


<a class='.link' href='some_text' title='~some_id'>some_text</a>


Как мне ее кликнуть через trigger?

Mukhtar
22.05.2013, 17:27
код выше установка селекта в значение 100, если вам нужен просто опцион со значением 100, то код дал jsru_,
$("option[value='100']")
или
$("#items option[value='"+$_GET['id']+"']")

попытался сделать так, не получилось


id=$_GET['id'];
jQuery('.link href[title="~'+id+'"]').trigger('click');

рони
22.05.2013, 18:55
обычная ссылка вида

<a class='.link' href='some_text' title='~some_id'>some_text</a>

Как мне ее кликнуть
выбрать нужную ссылку и кликнуть.
jQuery(селектор ссылки).eq(0).click();

Mukhtar
23.05.2013, 05:52
выбрать нужную ссылку и кликнуть.
jQuery(селектор ссылки).eq(0).click();

я кажется неправильно пишу селектор ссылки. Пробую вот так


jQuery('a href[title="~'+id+'"]').eq(0).click();


Так тоже не нажимает


jQuery('.flink title="~'+id+'"').eq(0).click();

Mukhtar
23.05.2013, 06:22
function timers(){
var id=$GET['id'];
var items = jQuery('.inlinePanel-ul-li .flink').attr({title:"~"+id+""});
items.click();
}
timers();
Вот так нажимает, но на последний элемент. Если быть точным, нажимает на все элементы до конца. А нужный пропускает.

Mukhtar
23.05.2013, 07:02
вывел items через alert, выдало Object.

Походу поэтому все линки и нажимает.

Mukhtar
23.05.2013, 08:57
Добился я нажатия нужного линка. Теперь мне нужно, чтобы следующий линк нажался с задержкой.

Пробую
jQuery('#makeList a[href="{$mark}"]').click();
jQuery('#popMake .flink').eq(0).click();
setTimeout(jQuery('#modelList a[href="{$model}"]').click(),3000);
jQuery('#popModels .flink').eq(0).click();
не получается.
Последний штрих остался, помогите?

рони
23.05.2013, 15:45
<a class='.link' href='some_text' title='~some_id'>some_text</a>
если ссылка такая же, то мешает точка в классе.

Mukhtar
23.05.2013, 16:07
если ссылка такая же, то мешает точка в классе.

Про точку можно забыть, все работает, мне только нужно последний клик чтобы программно был с задержкой