Javascript.RU

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

Как обработать RadioButton с помощью JavaScript и AJAX
Всем привет!!! Помогите, пожалуйста, разобраться, как передать результат Radiobutton по ajax!

У меня есть форма, в ней из файла выгружаются вопросы для теста, переменная $res содержит текст вопроса, массив $option[$j] содержит варианты ответов. т.о. у меня есть 4 radiobuttonа.

<form id="cl_form" method="POST" action="">
<h2>Вопрос <?php echo $i; ?></h2>
<p><?php echo $res; ?></p>
<br>
<?php

for ($j=0; $j<4; $j++)
{
echo '<p><input type="radio" name="0" value="' . $j . '">' . ' ' . $option[$j] . '</p>';
}
?>
<input type="submit" id="Далее">
</form>

и есть код, передающий по аякс номер вопроса $i, мне надо передать еще и вариант, который будет отмечен в radiobutton!! Подскажите, пожалуйста, как это сделать!!!!

вот код javascripta

$(function()
{
$('#cl_form').submit(function(e)
{
e.preventDefault();
i++;
$.ajax(
{
type:'post',
url:'proba.php',
data:
{
val:i,
},

success: function(result)
{
$('#cl_form').html(result);
}
});
});
});
Ответить с цитированием
  #2 (permalink)  
Старый 24.12.2013, 09:18
Новичок на форуме
Отправить личное сообщение для MagicDawn Посмотреть профиль Найти все сообщения от MagicDawn
 
Регистрация: 23.12.2013
Сообщений: 6

переменная i описана выше, просто на странице обрабатывающей аякс мне надо знать номер вопроса.
<script>

	var i=0;
	
	$(function() 
	{
		$('#cl_form').submit(function(e)
		{
			e.preventDefault();								
			i++;
			
			$.ajax(
			{					
				type:'post',
				url:'proba.php',
				data:							
				{	
				        val:i,	
				},
									
				success: function(result)
				{
					$('#cl_form').html(result);
				}
			});
		});
	});

	</script>
Ответить с цитированием
  #3 (permalink)  
Старый 24.12.2013, 09:33
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,252

Сообщение от MagicDawn
Как обработать RadioButton с помощью JavaScript и AJAX
Взять его значение и отправить...

<!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">
function getVal() {
	var o=document.getElementsByName('test');
	for (var i=0; i<o.length; i++) {
		if (o[i].checked) {
			return o[i].value;
		};
	};
	return 'Нет значения';
};
</script>
</head>
<body>
<input type='radio' name='test' value='0' />
<input type='radio' name='test' value='1' />
<input type='radio' name='test' value='2' />
<button onclick='alert(getVal());'>getVal</button>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 24.12.2013, 17:55
Новичок на форуме
Отправить личное сообщение для MagicDawn Посмотреть профиль Найти все сообщения от MagicDawn
 
Регистрация: 23.12.2013
Сообщений: 6

ksa, Это то все понятно, но у меня на форме уже есть кнопка submit, по нажатию которой выполняется аякс, и вторая кнопка не нужна!! мне как то без нее надо
Ответить с цитированием
  #5 (permalink)  
Старый 24.12.2013, 18:45
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 456

MagicDawn,
<form id="cl_form">
	<h2>Вопрос <?php echo $i; ?></h2>
	<p><?php echo $res; ?></p>
	<br>
	<input type="hidden" name="number" value="<?php echo $i; ?>">
<?php
for ($j = 0; $j < 4; $j++) {
	echo '<p><input type="radio" name="variant" value="' . $j . '"> ' . $option[$j] . '</p>';
}
?>
	<input type="submit" value="Далее">
</form>

$(function() {
	$('#cl_form').submit(function(e) {
		e.preventDefault();
		var isCheck = 0;
		for (var i = 0; i < this.variant.length; i++) {
			if (this.variant[i].checked) {
				isCheck = 1;
				break;
			}
		}
		if (!isCheck) {
			alert('Выберите вариант ответа');
			return;
		}
		$.ajax({
			type: 'post',
			url: 'proba.php',
			data: $(this).serialize(),
			success: function(result) {
				$('#cl_form').html(result);
			}
		});
	});
});

на сервере:
$_POST['number'] // Номер вопроса
$_POST['variant'] // Вариант ответа
Ответить с цитированием
  #6 (permalink)  
Старый 24.12.2013, 19:14
Новичок на форуме
Отправить личное сообщение для MagicDawn Посмотреть профиль Найти все сообщения от MagicDawn
 
Регистрация: 23.12.2013
Сообщений: 6

Rise,
Спасибо огромное за помощь!!!!! ЭТо то, что надо!!
Ответить с цитированием
  #7 (permalink)  
Старый 24.12.2013, 20:42
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,252

Сообщение от MagicDawn
вторая кнопка не нужна!!
Причем тут кнопка?
Я показал тебе как брать значение, что с ним делать - решать тебе.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как научиться думать на javascript ? samuel Оффтопик 31 03.09.2013 02:10
Flow moving как в seadragon Ajax den_zm Dojo toolkit 0 19.04.2013 14:34
Как ускорить вставку html из ajax? jey7 AJAX и COMET 7 27.05.2012 11:02
как поменять цвет элементов div с помощью ajax? uspehovna AJAX и COMET 12 20.08.2010 17:21
Как передать картинку из javascript в php KIVagant AJAX и COMET 3 12.05.2010 11:54