Я пытаюсь обновить sidebar.php в WordPress на форму отправки - PullRequest
0 голосов
/ 27 марта 2011

Я пытаюсь обновить файл sidebar.php в wordpress при отправке формы (то есть в виджете на sidebar.php).

У меня есть видео на странице, и если обновляется вся страницавидео должно воспроизводиться с самого начала.

Мне нужно решение, чтобы просто обновить sidebar.php, когда кто-то отправляет форму ... Я не опытный программист php, так что просто лучше!

кстати.Я использую грозный плагин для формы.

заранее спасибо!

1 Ответ

0 голосов
/ 27 марта 2011

Звучит как работа для ajax!

Теперь вы можете сделать это с нуля, но это будет излишне болезненным.Вместо этого я рекомендую включить jquery на вашу страницу, добавив это в заголовок

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>

(в котором используется последняя версия, размещенная в Google)

Теперь, когда у вас загружен jquery,Есть много простых способов представить ваши данные, не прерывая поток вещей.Вот как я бы это сделал (я предполагаю, что вы используете method = "post"):

  1. Измените <input type="submit" > на <button>, поэтому нажатие на него не вызываетвстроенная форма отправки (которая будет прерывать ваше видео).
  2. Установите для атрибута id вашей кнопки что-то, чтобы вы могли легко ссылаться на нее, например <button id="mysubmitbutton">.(Пока вы это делаете, присвойте атрибуты id всем интересующим вас полям формы, если вы еще этого не сделали, чтобы вы могли легко ссылаться на них, например <input type="text" name="firstName" id="firstName"> вместо просто <input type="text" name="firstName">)
  3. Внутри части <head> вашего веб-сайта добавьте код, который выглядит примерно так:

<script type="text/javascript">

//makes it so that it goes after the html document is ready for it

$(document).ready(function() {

   //this ties a onclick event to your button you made

   $("#mysubmitbutton").click(function(){

    //when the button is clicked, it will asychronously post to where you want it to

      $.post("urlthatwasinyouractionequalsattribute.php", 

      { 

         //put all your post variables here, referencing the ids you made earlier

         firstName: $("#firstName").val(), 

         time: $("#time").val() //be sure you don't have a trailing comma on the last one

      },

      function(data) {

        //data is whatever the other website sends back. do whatever you want here...

        alert("Result: " + data);

      });

   });

});

</script>

Запустите его, и он должен работать.Очевидно, вам нужно будет изменить значения так, чтобы они соответствовали вашей форме и т. Д.

Надеюсь, это поможет!Пожалуйста, отметьте как ответ, если это так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...