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

HTML+CSS+JavaScript

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

 

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

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

тема: По нажатию на ссылку передавать параметры ajax
 
 автор: OLi   (17.10.2010 в 21:35)   письмо автору
 
 

Есть такой скрипт ajax
$('#myForm').submit(function(){  
   $.ajax({  
       type: "POST",  
       url: "greetings.php",  
       data: "username="+$("#username").val(),  
       success: function(html){  
           $("#content").html(html);  
       }  
   });  
   return false;  
}); 

Который получает значение поля username и посілает в php как видно собітие происходит по нажатию на кнопку submit
Как сделать чтоб параметр username ссылки <a href="index.php?username=vasia">1</a> передавался ajax по клику?

  Ответить  
 
 автор: OLi   (18.10.2010 в 16:23)   письмо автору
 
   для: OLi   (17.10.2010 в 21:35)
 

Скажем если даже так <a href="#" rel="{'data' : {'username' : 'vasia'}}" >
Как преобразовать rel  в JSON формат а потом передать для  data: "username="+$("#username")),

  Ответить  
 
 автор: mihdan   (18.10.2010 в 23:14)   письмо автору
 
   для: OLi   (17.10.2010 в 21:35)
 


$('#myLink').click(function(){   
   $.ajax({   
       type: "POST",   
       url: "greetings.php",   
       data: "username="+$("#username").val(),   
       success: function(html){   
           $("#content").html(html);   
       }   
   });   
   return false;   
}); 

<a href="index.php?username=vasia" id="myLink">1</a>

  Ответить  
 
 автор: OLi   (19.10.2010 в 00:46)   письмо автору
 
   для: mihdan   (18.10.2010 в 23:14)
 

Что-то не работает имею код:
test.php


<html>
<head>
<title></title>
<script src="jquery.js" type="text/javascript"></script>
</head>
<body>
<a href="index.php?username=2" id="myLink">1</a>
<script>        
$('#myLink').click(function(){    
   $.ajax({    
       type: "POST",    
       url: "greetings.php",    
       data: "username="+$("#username").val(),    
       success: function(html){    
           $("#content").html(html);    
       }    
   });    
   return false;    
});  


  </script>

</body>
</html>

greetings.php

<?php


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


Ничего не віводится!


?>

  Ответить  
 
 автор: mihdan   (19.10.2010 в 00:59)   письмо автору
 
   для: OLi   (19.10.2010 в 00:46)
 

Изначально не правильно вас понял. Попробуйте так:


$('#myLink').click(function(){    
   $.ajax({    
       type: "POST",    
       url: "greetings.php",    
       data: "username="+$(this).attr('rel'),    
       success: function(html){    
           $("#content").html(html);    
       }    
   });    
   return false;    
});  

<a href="index.php?username=vasya" id="myLink" rel="vasya">1</a> 
<div id="content"></div>

  Ответить  
 
 автор: OLi   (19.10.2010 в 01:05)   письмо автору
 
   для: mihdan   (19.10.2010 в 00:59)
 

Получается что index.php?username=vasya можно не прописывать, т-е переменная берется из rel

  Ответить  
 
 автор: OLi   (19.10.2010 в 01:11)   письмо автору
 
   для: OLi   (19.10.2010 в 01:05)
 

Благодарю- работает! А есть какие-то уязвимости в этом коде? Если будет запрос к базе?
И почему скажем для двух ссылок не срабатывает клик для второй ссылки
<a href="#" id="myLink" rel="1">Скин</a>
<a href="#" id="myLink" rel="2">Скин2</a>
Не усмотрел одинаковіе id
ну скажем php у меня будет генерить разные id... что в том скрипте изменить чтоб он принимал все значения myLink1 myLink2 myLink 3...

  Ответить  
 
 автор: mihdan   (19.10.2010 в 14:16)   письмо автору
 
   для: OLi   (19.10.2010 в 01:11)
 

Используя rel:


<html>
    <head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript">
    $(function() {
            $('a.username').click(function(){
                $.ajax({
                    type: "POST",
                    url: "greetings.php",
                    data: "username="+$(this).attr('rel'),
                    success: function(html){
                        $("#content").html(html);
                    }
                });
                return false;
            });
    });
    </script>
    </head>
    <body>
        <ul>
            <li><a href="#" class="username" rel="Vasya">Vasya</a></li>
            <li><a href="#" class="username" rel="Sveta">Sveta</a></li>
            <li><a href="#" class="username" rel="Artem">Artem</a></li>
            <li><a href="#" class="username" rel="Ivan">Ivan</a></li>
        </ul>
        <div id="content"></div>
    </body>
</html>


Либо, используя hash:


<html>
    <head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript">
    $(function() {        
            $('a.username').click(function(){
                $.ajax({
                    type: "POST",
                    url: "greetings.php",
                    data: "username="+this.hash.substring(1),
                    success: function(html){
                        $("#content").html(html);
                    }
                });
                return false;
            });
    });
    </script>
    </head>
    <body>
        <ul>
            <li><a href="#Vasya" class="username">Vasya</a></li>
            <li><a href="#Sveta" class="username">Sveta</a></li>
            <li><a href="#Artem" class="username">Artem</a></li>
            <li><a href="#Ivan" class="username">Ivan</a></li>
        </ul>
        <div id="content"></div>
    </body>
</html>


[поправлено модератором]

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

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