2013-12-17 4 views
0

Я новичок, и мой английский очень злой. Я ищу способ изменить значение моей ссылки, нажав на один из флажков. 1 = серия Soite 2 = фильм Как я могу это сделать? Текущий код, выполняющий перезагрузку страницы.Значение меняет мою ссылку без обновления

<?php if(isset($_POST['g'])){$g = $_POST['g'];?> 
<form id="tform" method="post"> 
    <input type="checkbox" id="1" name="g"<?php if ($_POST['g'] == "serie") {echo 'checked="checked"';} ?> value="serie" class="checkbox"> 
    <label for="1">Série</label> 
    <input type="checkbox" id="2" name="g"<?php if ($_POST['g'] == "film") {echo 'checked="checked"';} ?> value="film" class="checkbox"> 
    <label for="2">Film</label> 
</form> 

В этой ссылке:

function grab(code) { 
      $.ajax({ 
      url: '/movies.php?g=?g=<?= $g; ?>&code='+code+'', 
      async: true, 
      beforeSend: function() { 
      $('#infos').html('<br /><br /><div class="load" id="load"><center>Chargement des données<br /><img src="/images/loader.gif" alt="Chargement des données en cours..." /></center></div><br /><br />'); 
      $('#infos').show(); 
      }, 
      success: function(data) { 
       $('#infos').empty(); 
       $('#infos').html(data); 
      } 
     }); 
    } 
$(document).ready(function() { 
    $('input[name=g]').change(function(){ 
    $('#tform').submit(); 

    }); 
}); 

Спасибо за вашу доброту.

+0

Эта ссылка упомянута в вашем PHP? Если это в Javascript, добавьте этот код к вашему вопросу. – Barmar

+0

Извините, что я новый участник:/thanks to hemp me please. – Boom

+0

Вы говорите португальский? – csbenjamin

ответ

0

Используйте опцию data: для $.ajax.

function grab(code) { 
    var gval = $("#tform :checkbox:checked").val(); 
    $.ajax({ 
     url: '/movies.php', 
     method: "GET", 
     data: { 'g': gval, code: code }, 
     async: true, 
     beforeSend: function() { 
      $('#infos').html('<br /><br /><div class="load" id="load"><center>Chargement des données<br /><img src="/images/loader.gif" alt="Chargement des données en cours..." /></center></div><br /><br />').show(); 
     }, 
     success: function(data) { 
      $('#infos').html(data); 
     } 
    }); 
} 
+0

hi, i can not 'change this, потому что у меня есть ошибка здесь: $ .ajax ({ – Boom

+0

) Я забыл запятую на строке 'data', исправил ее. – Barmar

+0

Только что изменилось. Я ошибочно думал, что вы используете Параметры массива для 'g', но это было в чьем-то ответе, а не на вашем вопросе. Я изменил ответ на использование одного значения. – Barmar

0
<?php if(isset($_POST['g'])){$g = $_POST['g'];?> 
<form id="tform" method="post"> 
    <input type="checkbox" id="1" name="g[]"<?php if (in_array("serie",$g)) {echo 'checked="checked"';} ?> value="serie" class="checkbox"> 
    <label for="1">Série</label> 
    <input type="checkbox" id="2" name="g[]"<?php if (in_array("film",$g)) {echo 'checked="checked"';} ?> value="film" class="checkbox"> 
    <label for="2">Film</label> 
</form> 
+0

Не значение в консоли: http://domain.com/movies.php?g=?g=&code=7330 – Boom

+0

вы не можете изменить $ g переменной на стороне клиента. Чтобы что-то изменить на стороне клиента, вам нужно использовать javascript – csbenjamin

+0

Невозможно, если вы не опубликуете какие-либо данные, если вы хотите сделать это, вы можете использовать javascript. но javascript не может изменить значение $ g php. –

Смежные вопросы