[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: JavaScript+JQuery! Обновить страницу
Stasonix
JavaScript+JQuery! Как повесить функцию обновления страницы на эту же нажатую кнопку, которая имеет другую функцию?

я понимаю что звучит очень странно, НО! по пунктам:

1. есть кнопка С функцией А
2. при нажатии на эту кнопку она присваивает себе другое значение value(это пока не так важно) и другую функцию при нажатии на нее еще раз!, функцию B, у меня это перезагрузка страницы(обновление).

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

$('#prim').click(function(){

if (sr==17)
{
$('#prim').attr("value","спробувати ще раз");
$('#prim').click(window.location.reload());
};
});


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



Спустя 4 минуты, 23 секунды (16.04.2011 - 00:37) Snus написал(а):
$(document).ready(function(){
$('#but').click(function(){
var val = $(this).val();
if(val == 'Привет'){
$(this).val('Как дела?');
} else {
window.location.reload();
}
}
);
});


<input type="button" id="but" value="Привет">

Спустя 3 часа, 18 минут, 36 секунд (16.04.2011 - 03:55) Stasonix написал(а):
Цитата (Stasonix @ 15.04.2011 - 21:32)
if (sr==17)

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

Спустя 19 часов, 24 минуты, 49 секунд (16.04.2011 - 23:20) denizkin написал(а):
Stasonix
Может быть во так? ;)

$(document).ready(function(){
if (sr==17) {
$('#but').click(function(){
var val = $(this).val();
if(val == 'Привет'){
$(this).val('Как дела?');
} else {
window.location.reload();
}
}
);}
}
);


Может быть по другому, когда у вас переменная sr становиться известна?

Спустя 1 час, 44 минуты, 13 секунд (17.04.2011 - 01:04) Stasonix написал(а):
Цитата (denizkin @ 16.04.2011 - 20:20)
Stasonix
Может быть во так?  ;)

$(document).ready(function(){
if (sr==17) {
  $('#but').click(function(){
      var val = $(this).val();
      if(val == 'Привет'){
          $(this).val('Как дела?');
      } else {
          window.location.reload();
      }
  }
);}
}
);


Может быть по другому, когда у вас переменная sr становиться известна?

Stasonix
Может быть во так? ;)


var sr=0;
$(document).ready(function(){
$('#prim').click(function(){
if (sr==17)
{
$('#prim').attr("value","спробувати ще раз");
$('#prim').click(obnovit());
};
sr++; // это должно происходить при событии клик на кнопке
});


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

Спустя 7 часов, 53 минуты, 52 секунды (17.04.2011 - 08:58) denizkin написал(а):
Stasonix
Мог бы не добавлять я умею программировать чутка)) :D

Смотри из того, что ты написал у тебя получается загружается страница в которой вызывается функция походу в которой у тебя происходит код который ты выложил, т.к. var делает переменную не глобальной,а только для данной ф-ции. Идём дальше sr=0 изначально, потом мы кликаем на кнопку 17 раз и выполняется наше условие, а потом счётчик продолжает считать клики дальше, тобишь 17+++++, может быть надо сделать где-то обнуление? Расскажи алгоритм, а то я непонимаю зачем нужно 17 раз на кнопку щёлкнуть!))

var sr=0;
$(document).ready(function(){
$('#prim').click(function(){
if (sr==17)
{
$('#prim').attr("value","спробувати ще раз");
$('#prim').click(obnovit());
sr=0; // простое обнуление хотя бы добавить!
};
sr++; // это должно происходить при событии клик на кнопке
});

Спустя 6 часов, 49 минут, 19 секунд (17.04.2011 - 15:48) Stasonix написал(а):
Цитата (denizkin @ 17.04.2011 - 05:58)
может быть надо сделать где-то обнуление? Расскажи алгоритм, а то я не понимаю зачем нужно 17 раз на кнопку щёлкнуть!

Я делаю тест, в нем 18 вопросов (отсчет с нуля, т.е. 17-ый последний), так вот дойдя до 17 и ответив на него кнопка "Следующий вопрос" должна изменить название на "Пройти тест еще раз" и соответственно изменить свою фун-ию по клику на "обновление страницы", поэтому я и не заморичваюсь над обнулением счетчика, он автоматически обнулится при перезагрузки, а вот с переназначением функции проблемы.

Спустя 1 час, 10 минут, 48 секунд (17.04.2011 - 16:58) denizkin написал(а):
Stasonix
Ну тогда вот же тебе снус ответил!

$(document).ready(function(){
$('#but').click(function(){
var val = $(this).val();
if(val == 'Привет'){
$(this).val('Как дела?');
} else {
window.location.reload();
}
}
);
});


Тобишь говоря русским языком внутри функции теста и сделать if (sr==17) то то выполнить! Ну короче вот так типо:

var sr=0;
$(document).ready(function(){
$('#prim').click(function(){
if (sr==17)
{
$('#prim').attr("value","спробувати ще раз");
$('#prim').click(obnovit());
}
else
{
основная функция твоя
}
sr++; // это должно происходить при событии клик на кнопке
});


Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.