Показать сообщение отдельно
  #1 (permalink)  
Старый 03.12.2012, 16:06
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Как изменить действие функции
Приветствую всех. Подскажите как можно изменить действие функции button(), вызываемой при нажатии кнопки "Далее". Она создает и выводит новые элементы input. Кнопка "Назад" ничего не создает, а только скрывает текущие элементы и показывает предыдущие. Мне нужно, чтобы кнопка "Далее" делала то же самое, что и "Назад", но при условии, что создаваемые элементы уже существуют. Как это можно реализовать?
var Data; var i = 0;
function button(x) {
if(x==1) {       //выполняется если нажата кнопка "Далее"
$('#here' + i).css("display", "none");
i++;
go();
$('#back').css("display", "inline-block");
}
else if(x==2){   //Выполняется если нажата кнопка "Назад"
$('#here' + i).css("display", "none");
i--;
$('#here' + i).css("display", "block");
}
}

function go(data) {
data = Data;
if(i > data.length - 1) {
return false;
}
var row = '';
row = '<span id="here'+i+'">';
row += '<b>' + data[i].questions + '</b><Br>';
var ss = data[i].answers.split(',');
for (var i2 = 0; i2<ss.length; i2++) {
row += '<input type="radio" name="id_answer'+i+'" value="' + i2 + '">' + ss[i2] + '<Br>';
}
row += '</span>'
$('#feeds').prepend(row);
}

$(document).ready(function(){
$('form input:image').click(function() {
var drink = $('input[name=drink]:checked').val();
$.post('save_data.php', {drink: drink},
function(data){
Data = data;
if(data) {
var fieldsCount = data.length;
var row = '';
if(fieldsCount) {
row = '<form><button onclick="button(1); return false;">Далее</button>';
row += '<button id="back" style="display: none" onclick="button(2); return false;">Назад</button></form>';
$('#feeds').html(row);
go(Data);
}
}
  }, "json"); 
return false;
});
});

Последний раз редактировалось Dimaz, 03.12.2012 в 16:11.
Ответить с цитированием