it-swarm.com.ru

$ .ajax (тип: "POST" POST метод к php

Я пытаюсь использовать метод POST в jQuery для запроса данных. Так что это код на HTML-странице:

<form>
Title : <input type="text" size="40" name="title"/>
<input type="button" onclick="headingSearch(this.form)" value="Submit"/><br /><br />
</form>
<script type="text/javascript">
function headingSearch(f)
{
    var title=f.title.value;
    $.ajax({
      type: "POST",
      url: "edit.php",
      data: {title:title} ,
      success: function(data) {
        $('.center').html(data); 
      }
    });
}
</script>

И это код php на сервере:

<?php

$title = $_POST['title'];
if($title != "")
{
    echo $title;
}

?>

Запрос POST вообще не сделан, и я понятия не имею, почему. Файлы находятся в одной папке в папке wamp www, поэтому, по крайней мере, URL-адрес не является неправильным.

9
user1201915

Вам нужно использовать data: {title: title}, чтобы POST это правильно.

В коде PHP вам нужно echo значение вместо returning его.

8
ThiefMaster

Проверьте, имеет ли заголовок какое-либо значение или нет. Если нет, то получите значение, используя Id.

<form>
Title : <input type="text" id="title" size="40" name="title" value = ''/>
<input type="button" onclick="headingSearch(this.form)" value="Submit"/><br /><br />
</form>
<script type="text/javascript">
function headingSearch(f)
{
    var title=jQuery('#title').val();
    $.ajax({
      type: "POST",
      url: "edit.php",
      data: {title:title} ,
      success: function(data) {
    $('.center').html(data); 
}
});
}
</script>

Попробуйте этот код.

В коде php используйте echo вместо return . Только тогда данные javascript будут иметь свое значение.

2
Nishu Tayal

Я бы посоветовал вам использовать немного более простой метод -

$.post('edit.php', {title: $('input[name="title"]').val() }, function(resp){
    alert(resp);
});

попробуйте этот, я просто чувствую, что его синтаксис проще, чем у $ .ajax ...

0
manWe