Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.01.2013, 18:03
Интересующийся
Отправить личное сообщение для Shurik Посмотреть профиль Найти все сообщения от Shurik
 
Регистрация: 17.01.2013
Сообщений: 25

Идентифицировать элемент
Всем привет!

Есть форма. В ней 2 кнопки. При нажатии на одну кнопку сохраняются данные. При нажатии на другую - переход на другую страницу. Необходимо сделать так, чтобы черз 5 секунд после нажатия на кнопку "сохранить" нажималась кнопка "перейти". После нажатия на "сохранить" у этой кнопки появляется атрибут disabled="disabled". Т.е. если у данной кнопки есть данный атрибут, то должна срабатывать
window.setTimeout(function() {document.getElementById('next').click();}, 5000);


Проблема в том, что ид и название кнопки постоянно меняются. Постоянное только value и type.

Пробовал сделать так:

function a() {
var elems = document.getElementById("responseform").getElementsByTagName("input");
for (i=0; i < elems.length; i++) 
{
    if (elems[i].disabled == "disabled" )
        {window.setTimeout(function() {document.getElementById(\'next\').click();}, 5000);}
    else
        {window.setTimeout(function() {document.getElementById(\'next\').click();}, 5000);}
}
                         }

Не работает

Последний раз редактировалось Shurik, 17.01.2013 в 18:07.
Ответить с цитированием
  #2 (permalink)  
Старый 17.01.2013, 18:32
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Shurik,
Выложите HTML-код кнопок, оберните их в элемент с постоянным ID
Ответить с цитированием
  #3 (permalink)  
Старый 22.01.2013, 11:24
Интересующийся
Отправить личное сообщение для Shurik Посмотреть профиль Найти все сообщения от Shurik
 
Регистрация: 17.01.2013
Сообщений: 25

Получилось вычислить id элемента. написал скрипт, но он не работает. В js я новичок.

var elem = document.getElementById("responseform").getElementById("q180:20_-sibmit");
if (elem.getAttribute("disabled") == disabled)
{
	{window.setTimeout(function() {document.getElementById("next").click();}, 5000);}
	else 	{window.setTimeout(function() {document.getElementById("next").click();}, 40000);}
}


Задача такова: Если элемент id="q180:20_-sibmit" (значение id изменяется) имеет атрибут disabled="disabled", то через 5 сек нажимается кнопка id="next", если атрибута нет, то кнопка id="next" нажимается через 40 сек.

Зараннее благодарен
Ответить с цитированием
  #4 (permalink)  
Старый 22.01.2013, 11:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Shurik, как вариант...

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
</script>
</head>
<body>
<input type='text' id='test' disabled />
<button id='next' onclick='alert(1)'>next</button>
<script type="text/javascript">
	var e = document.getElementById('test');
	if (e) {
		var t=e.getAttribute("disabled");
		t=(t=='disabled'||t!=null)? 5000: 40000;
		setTimeout(function() {document.getElementById("next").click();}, t);
	}
</script>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 22.01.2013, 12:25
Интересующийся
Отправить личное сообщение для Shurik Посмотреть профиль Найти все сообщения от Shurik
 
Регистрация: 17.01.2013
Сообщений: 25

Спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбрать элемент у родителя которого сын это элемент по которому кликнули MalikSPB Events/DOM/Window 8 30.12.2012 12:22
Вытеснить элемент из потока Isaac (X)HTML/CSS 5 13.04.2012 15:14
Drag-n-Drop - перетянуть элемент Jugo ExtJS 1 10.08.2011 19:10
Как передать элемент в переменную из функции kichSman jQuery 3 12.07.2011 22:16
перенести элемент в другой контейнер debugx jQuery 2 02.06.2011 15:53