2009-10-13 2 views
1

Когда я делаю вызов ajax (см. Код ниже), что такое «данные». Как установить и получить данные

// $.post() 
$("#post").click(function(){ 
    $("#result").html(ajax_load); 
    $.post( 
     loadUrl, 
     {language: "php", version: 5}, 
     function(data){ 
      $("#result").html(data); 
     }, 
     "json" 
    ); 
}); 

ответ

1

The documentation for $.post говорит, что данные "могут быть xmlDoc, jsonObj, HTML, текст и т.д. ...". Это то, что сервер возвращает для loadUrl, указанного вами с указанными параметрами (в вашем случае, язык: «php», версия: 5), поэтому вам нужно проверить, что возвращает сервер.

Просто ответьте (данные) в своем обратном вызове, и вы увидите, что было возвращено.

Обновление: переименовано 'responseText в' data ', так как OP изменил вопрос, чтобы сделать это.

+0

Я думаю, он спрашивает, что такое ввод данных, а не то, что ответ/ответ. –

+0

@ Jakobud Sigh, мой ответ попал в переименование/разъяснение OP, что сделало его забавным. Используете ли вы downvote все еще? – aem

+0

@Jakobud: Я не думаю, что нижняя грань оправдана. Насколько я понимаю, вопрос относится к правильной вещи. –

0

Например, я использую:

$(document).ready(function(){ 
$("#btSend").click(function() { 
    $.post("/Ajax/script.php", {nome: $("#nome").val(), email: $("#email").val()}, function(data) { 
     alert(data); 
    }); 
    return false; 
}); 

});

Сценарий script.php возвращает то, что я хочу показать, но вы можете изменить, чтобы сделать другую операцию с «данными». «BtSend» - это изображение, а «nome» и «e-mail» - это текстовые поля html.

Это работает :)

0
$.post('fileName.php',{ 

data: $('#id').val(), 
}, 
function(response) 
{ 
    alert(response); 
} 
} 
5

Данные Сериализованное значение ваших входов. Пример:

<form> 
    <input type='text' name='myText1' value='hello'/> 
    <input type='text' name='myText2' value='world'/> 
</form> 

Вы могли теперь запустить это:

var myData = $('form').serialize(); 
alert(myData); 

И ваш MessageBox бы сказать:

myText1=hello&myText2=world 

MyData это значение данных, которые вы хотите передать в $ .post.

Поскольку вы новичок в jQuery, я бы порекомендовал вам попробовать использовать функцию $.ajax. Для этого есть еще много вариантов, но я всегда думал, что это было более просто и понятнее, чем $ .post. Вот как я хотел бы использовать его:

$.ajax({ 
    type: "POST", //define the type of ajax call (POST, GET, etc) 
    url: "my-ajax-script.php", //The name of the script you are calling 
    data: myData, //Your data you are sending to the script 
    success: function(msg){ 
     $("#result").html(msg); //Your resulting action 
    } 
}); 

Btw, не забывайте, что для того, чтобы использовать JQuery сериализацию функции, все входы должны иметь имя набора атрибутов, или же функцию сериализации будет игнорировать их.

+0

Я думаю, что OP спрашивает, что такое данные ответа, а не какие входные данные. –

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