[JavaScript, AJAX] Задай вопрос, получи ответ

Discussion in 'PHP' started by banned, 9 Jun 2007.

Thread Status:
Not open for further replies.
  1. ANTIJABBER

    ANTIJABBER New Member

    Joined:
    6 Jan 2009
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    Как сделать подгрузочную имагу во время загрузки скрипта, средствами ajax
     
  2. CrazyNight

    CrazyNight New Member

    Joined:
    6 Jan 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Просто ajax'ом подгружаешь ссылку на изображение, а потом вставляешь IMG уже с нужной ссылкой в DOM.

    На чистом js времени нет писать, вот с jQuery:
    Code:
    var url='example.php'; // PHP-скрипт, отдающий путь на изображение
    $.post(url, {param: 'param'}, function(data)  // Обращаемся через ajax методом POST к указанному скрипту; указываем, если нужно параметры, потом вызываем анонимную функцию для обработки результатов
    { 
    $('body').prepend('<img src="'+data+'" />'); // Вставляем новое изображение в тег body, в самое начало
    });
    
     
  3. DCRM

    DCRM Elder - Старейшина

    Joined:
    12 Dec 2006
    Messages:
    67
    Likes Received:
    27
    Reputations:
    -1
    Поделюсь своим примером... подходит для загрузки любых данных, откуда угодно, и в любое место страницы :)

    0. Скачиваем библиотеку jquery-1.2.6.pack.js

    1. Определяем стиль надписи "Загрузка"
    HTML:
    <style type="text/css">
    .main_load
    {
    	border: 1px #9A9993 dashed;
    	font-size:24px;
    	text-align:center;
    	position:relative;
    	top: 50%;
    	left: 50%;
    	margin-left:-100px;
    	height:30px;
    	width:200px;
    }
    </style>
    2. Собственно подключаем либу, и создаём функцию для подзагрузки элементов в определённый DIV, которая будет доступна для выполнения при полной загрузке страницы...
    HTML:
    <script src="jquery-1.2.6.pack.js" type="text/javascript"></script>
    
    <script type="text/javascript">
    $(document).ready(function(){	
    	function getIdSet(div_x,type_x,date_x,url_x)
    	{
    		$.ajax({type: type_x,data: date_x,url: url_x,
    			beforeSend: function()	{$(div_x).html("<div class=\"main_load\">Загрузка...</div>");},
    			success: function(dt)	{$(div_x).html(dt);},
    			error: function()	{$(div_x).html("<div class=\"main_load\">Ошибка... :( </div>");}
    		});
    	}
    });
    </script>
    3. Применение: [в какой DIV будет происходить загрузка, метод передачи данных, значения, и куда отправлять запрос]
    Code:
    getIdSet('{DIV ID}','POST','val1=1&val2=2','loader.php')
    4. Пример инклуда картинок (loader.php)
    PHP:
    <?php
    $_GET
    ['image']=isset($_GET['image']) ? $_GET['image']:"";
    $id='';
    switch (
    $_GET['page'])
    {
        case 
    'img1'$id='img/image.jpg'; break;
        case 
    'img2'$id='img/photo.png'; break;
        case 
    'img3'$id='img/picture.gif'; break; 
        default: 
    $id='img/na.gif'; break; 
    }
    echo 
    "<img src='{$id}'/>";
    ?>
    p.s. возвращаемый от loader.php, в данном примере, должен быть чистый html :)
     
    #1083 DCRM, 11 Jan 2009
    Last edited: 11 Jan 2009
  4. S1nd1c4t3

    S1nd1c4t3 New Member

    Joined:
    10 Jan 2009
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Подскажите как это вычислить?

    PHP:
    <script type="text/javascript">
        
    length 5;
        
    3;
        
    2;
        
    Math.sin(118.13);
        
    = -y
        x 
    Math.ceil(y);
        
    y++;
        
    y+x+x
        y 
    *= (y/2);
        
    y++;
        
    y++;
        
    length Math.floor(y);
    </script>
     
  5. D Mak

    D Mak Elder - Старейшина

    Joined:
    23 Jun 2007
    Messages:
    136
    Likes Received:
    27
    Reputations:
    0
    PHP:
    document.write(y+';'+x);
    если самому влом
    9.797887814238166;1
     
  6. ANTIJABBER

    ANTIJABBER New Member

    Joined:
    6 Jan 2009
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    Как отправить текстовые данные в буфер обмена?
     
  7. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    PHP:
    function ItemLine(checkboxtexthidden)
    {
    buy = eval("document.pay." +hidden);

    if(
    buy.value==""){
    document.getElementById(checkbox).style.color 'lime';
    document.getElementById(checkbox).innerText '+';
    document.getElementById(text).style.fontWeight 'bold';
    document.getElementById(text).style.color '#FFCA42';
    price=document.getElementById(text).innerText;
    Price(price,"plus");
    buy.value="1";
    } else {
    document.getElementById(checkbox).style.color 'red';
    document.getElementById(checkbox).innerText '';
    document.getElementById(text).style.fontWeight 'normal';
    document.getElementById(text).style.color '#9F9F9F';
    price=document.getElementById(text).innerText;
    Price(price,"minus");
    buy.value="";};
    }
    Есть функция которая управляет знаначением поля у формы hidden передаётся названия поля но почему оно не принимает числовое значение? Функция почемуто нарушается.... 32 не проходит а i32 проходит...



    Вот сама форма:
    PHP:
    <form ......>
    <
    tr><td style='cursor:hand' bgcolor=#494949 onmouseover="this.bgColor='#555555'" onmouseout="this.bgColor='#494949'" onclick="ItemLine('buyitemcheck242', 'buyitemprice242', 'i32')">
    <table border=0 cellpadding=2 cellspacing=2 width=100% >
    <
    tr><td width=35 align=center><font size=3pt><b><span id=buyitemcheck242 style='color:#FF0000'></span></b></font></td>
    <
    td width=45><img src=../la2_icons/drac_bow_sa.png></td><td><bДрак боу(фокус) + Драк сет</b></td>
    <
    td width=80 align=center><span id=buyitemprice242>1900 руб</span></td>
    <
    td width=15><input type=hidden name=i32></td></tr></table></td></tr></form>
     
    #1087 Byrger, 13 Jan 2009
    Last edited: 13 Jan 2009
  8. DMajere

    DMajere New Member

    Joined:
    25 Dec 2008
    Messages:
    40
    Likes Received:
    2
    Reputations:
    0
    подскажите пожалуйста, как скрыть элементы формы
     
  9. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Что-то в таком роде

    PHP:
    <input type="checkbox" id='add' onClick="if (document.getElementById('add').checked) {document.getElementById('mainform').style.display  ='block';} else {document.getElementById('mainform').style.display  ='none';}">Добавить
    <div name="mainform" style="display: none;" id="mainform">
    <
    form ...........>
    ...
    ...
    ...
    </
    form>
     
  10. MaTpOc

    MaTpOc Elder - Старейшина

    Joined:
    5 May 2008
    Messages:
    633
    Likes Received:
    475
    Reputations:
    25
    посоветуйте хороший учебник по JS чтоб без лишнего
    спс
     
  11. m0nsieur

    m0nsieur Elder - Старейшина

    Joined:
    8 Apr 2008
    Messages:
    223
    Likes Received:
    69
    Reputations:
    10
    Посмотри этот http://antichat.displayart.ru/JavaScript.rar
    Не помню кто выкладывал его, скачал себе, иногда заглядываю.
     
  12. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    есть старока в большой таблице при нажатии на любое место, ставится галочка в ЧекБоксе. Но как сделать чтоб про посторном нажатии она снималась?

    Но там ещё валуе задаётся та, что надо чтоб и оно сбрасывалось.


    PHP:
    <tr><td style='cursor:hand' bgcolor=#494949 onmouseover="this.bgColor='#555555'" onmouseout="this.bgColor='#494949'" onclick="document.getElementById('p4').checked=true; document.getElementById('p4').value=4;">
    <table border=0 cellpadding=2 cellspacing=2 width=100% >
    <
    tr><td width=35 align=center><INPUT class=commFl2 type=checkbox name=id id=p4 onClick='Forms(this);'><font size=3pt><b></b></font></td>
    <
    td width=45><img src=../img2/mjl.png></td><td><b>
    Majestic Leather Set</b></td><td width=80 align=center><span id=buyitemprice3>
    400 руб</span></td><td width=15></td></tr></table></td></tr>
     
    #1092 Byrger, 13 Jan 2009
    Last edited: 13 Jan 2009
  13. BitHack

    BitHack Elder - Старейшина

    Joined:
    14 Jan 2008
    Messages:
    47
    Likes Received:
    34
    Reputations:
    0
    Здрасти всем...
    не подскажите, как сделать чтобы при переходе на сайт, "отключались" кнопки браузера и адресная строка, то есть как бы пропали.....
    то есть как вот здесь описывают
    _http://www.xhtml-css.ru/sozdanie-novogo-okna-pop-up-ispolzuya-javascript/
    только здесь получается методом открытия нового окна...
    а нужно чтобы сразу, при переходе на сайт срабатывало....
    P.S сорри если не по русски написал =)
     
    6 people like this.
  14. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Ну помогите плиз написать скрипт чтоб при нажатии на поле ставилась галочки и наоборот....

    попробовал что-то типа того но не вышло
    PHP:
    function tubile(box)
    {
    if (
    box.checked == false){
    document.getElementById(box).checked=true;
    document.getElementById(box).value="4";

    } else {
    document.getElementById(box).checked=false;
    document.getElementById(box).value="";

    };
    }
    Форма...

    PHP:
    <tr><td style='cursor:hand' bgcolor=#494949 onmouseover="this.bgColor='#555555'" onmouseout="this.bgColor='#494949'" onclick="ItemLine2('p4')">
    <table border=0 cellpadding=2 cellspacing=2 width=100% >
    <
    tr><td width=35 align=center><INPUT type=checkbox name=id id=p4><font size=3pt><b></b></font></td>
    <
    td width=45><img src=../img2/mjl.png></td><td><b>
    Majestic Leather Set</b></td><td width=80 align=center><span id=buyitemprice3>
    400 руб</span></td><td width=15></td></tr></table></td></tr>
     
  15. big_BRAT

    big_BRAT Elder - Старейшина

    Joined:
    23 Dec 2006
    Messages:
    77
    Likes Received:
    64
    Reputations:
    7
    1. первое почему у тебя название функции при событии онклик ItemLine2, а сама функция tubile? испавляй
    2. не верно box.checked == false

    PHP:
     <script>    function tubile(box)   {   if (document.getElementById(box).checked == false){   document.getElementById(box).checked=true;   } else {   document.getElementById(box).checked=false;   };   }    </script>   <table border=1>    <tr><td style='cursor:hand' bgcolor=#494949 onmouseover="this.bgColor='#555555'" onmouseout="this.bgColor='#494949'" onclick="tubile('p4')">   <table border=0 cellpadding=2 cellspacing=2 width=100% >   <tr><td width=35 align=center><INPUT type=checkbox id=p4><font size=3pt><b></b></font></td>   <td width=45></td><td><b>   Majestic Leather Set</b></td><td width=80 align=center><span id=buyitemprice3>   400 руб</span></td><td width=15></td></tr></table></td></tr>  </table>
    где то так
     
    1 person likes this.
  16. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Спасибо ошибка была именно в ==
    А название функции это я криво вырезал
     
  17. zyak

    zyak New Member

    Joined:
    31 Oct 2008
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    При выгрузке файла вместо стандартного окошка сохранения содержимое файла выводится в браузер, хотя в упрощенном варианте без технологии AJAX все работает, да и файл mime.types отредактирован под расширение .tmp. В чем может быть проблема?
    И как узнать, что закачка завершена, для удаления файла?

    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename=\"".$fname."\"");
    header("Content-type: application/force-download");
    readfile($fpath);
     
  18. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    можно как-то на JS написать скрипт который при нажатии кнопки
    Бужет смотреть чему равно поле
    Если его значение меняще 100 то выводить сообщение "123"
     
  19. _evgeniy_

    _evgeniy_ Member

    Joined:
    7 Sep 2008
    Messages:
    25
    Likes Received:
    11
    Reputations:
    5
    Code:
    <INPUT onclick="if(document.getElementById('price').innerHTML < 100) { alert('123');} " name=submit type=submit size=1 value=Продолжить>
    <span id=price>5</span> 
     
    1 person likes this.
  20. Zabuldon

    Zabuldon Elder - Старейшина

    Joined:
    6 Apr 2008
    Messages:
    99
    Likes Received:
    6
    Reputations:
    0
    Появилась трабла... Пишу небольшой проект. Использую JQuery к нему подключаю плагины Forms и Tabs. Страничка строиться при помощи SMARTY проблема в следующем если я в один из табов загружаю контент через метод .load(); то форма отправляется как обычная (с перезагрузкой страницы) а если вставляю то же самый код в файл index.php (который и выводит табы) то никаких багов нет.... Мот кто знает как решить такую проблемку.. Слышал в JQuery 1.3 появился метод .Live(); но я пока так и не понял как его прикрутить к данной фишке... помогите плиз оч надо =)
     
Thread Status:
Not open for further replies.