Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Передать 2 параметра
 
 автор: designshadow   (20.02.2010 в 22:46)   письмо автору
 
 

<a href="#" id="<?php echo $id; ?>">

Как передать 2 id в обработчик в данной строке? Использую javascript без формы, передача POST.

  Ответить  
 
 автор: Тень&   (20.02.2010 в 22:50)   письмо автору
 
   для: designshadow   (20.02.2010 в 22:46)
 

А понятнее объяснить?

  Ответить  
 
 автор: designshadow   (20.02.2010 в 23:09)   письмо автору
 
   для: Тень&   (20.02.2010 в 22:50)
 

При нажатии на ссылку хочу получит два параметра в обработчик

Обработчик:

if (isset($_POST['id2]))
{
$id2 = $_POST['id2'];
}

if (isset($_POST['id']))
{
$id = $_POST['id'];
}

  Ответить  
 
 автор: kostiaGt   (20.02.2010 в 23:22)   письмо автору
 
   для: designshadow   (20.02.2010 в 22:46)
 

Вопрос 1: Вы используете Ajax?
Вопрос 1: Вы используете JavaScript Framework (например jQuery)?

  Ответить  
 
 автор: designshadow   (20.02.2010 в 23:24)   письмо автору
 
   для: kostiaGt   (20.02.2010 в 23:22)
 

Да

  Ответить  
 
 автор: kostiaGt   (20.02.2010 в 23:39)   письмо автору
 
   для: designshadow   (20.02.2010 в 23:24)
 

а нельзя сделать массив вида
 iQuery+Ajax
var params = {id={id1:'id1',id2: 'id2'} }
$('a').click(function() {
var id = $(this).attr('id');
if( !params[id] ) {
}else {
   $.ajax({
     ...
    data: params[id]
    }
    );
}
});

  Ответить  
 
 автор: designshadow   (21.02.2010 в 00:11)   письмо автору
 
   для: kostiaGt   (20.02.2010 в 23:39)
 

А если так?
<a href="#" id="<?php echo $id; ?>" name="<?php echo $id2; ?>">

var id = $(this).attr("id");
var dataString = 'id='+ id ;
var id2 = $(this).attr("name");
var dataString = 'id2='+ name ;
var parent = $(this);

  Ответить  
 
 автор: kostiaGt   (21.02.2010 в 00:31)   письмо автору
 
   для: designshadow   (21.02.2010 в 00:11)
 

да можно в принципе только, както каряво по моеу. А если с разделителем <a href='#' id='<?php echo 'id1:id2';?>' >, а потом разделить при помощи split?

  Ответить  
 
 автор: designshadow   (21.02.2010 в 09:37)   письмо автору
 
   для: kostiaGt   (21.02.2010 в 00:31)
 

А как такой вариант?
Проблема в том что id не передаётся обработчику если class='my' стоит в span!
Как можно передать id?

<span class='my'><a href="#" id="<?php echo $id:1?>">1</a><a href="#" id="<?php echo $id:2?>">2</a></span>


<script>
$(document).ready(function() {
$(".my").click(function() 
{
var id = $(this).attr("id");
var dataString = 'id='+ id ;
var parent = $(this);


$(this).fadeOut(300);
$.ajax({
type: "POST",
url: "my.php",
data: dataString,
cache: false,

success: function(html)
{
parent.html(html);
parent.fadeIn(300);

});


return false;

 });
});
</script>

  Ответить  
 
 автор: kostiaGt   (22.02.2010 в 22:33)   письмо автору
 
   для: designshadow   (21.02.2010 в 09:37)
 

А почему такая жесткая необходимость передавать два параметра. Почему при передачи одного параметра путем JS, php не может разобраться, что делать дальше. Я не очень доверяю JS. Опешите, зачем вам нужно передавать обязательно два параметра и почему именно методом POST. Кто знает, может мы вместе сможем найти элегантое решение вашей задачи.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования