Я попробую. но ответ "[объект объекта]"

success: function(data) {    
  var response = jQuery.parseJSON(data);    
  console.log(response);
  if (response.confirmation == 'success') {
    $('.std_info').html('<p>Student Name:'+$('#name').val(response.std_name)+'</p>');
  }
}

std_info мой идентификатор

0
Rohit 11 Дек 2016 в 20:00

4 ответа

Лучший ответ

"std_info" - это мой идентификатор

Вам нужно использовать # для идентификатора, а не .

Используйте это $('#std_info') вместо $('.std_info')

Я попробую. но ответ "[объект объекта]"

Также другая проблема с этой линией

$('.std_info').html('<p>Student Name:'+$('#name').val(response.std_name)+'</p>');

Здесь часть $('#name').val(response.std_name) установит значение во входной элемент с идентификатором name и вернет вам объект Jquery , поэтому вы видите содержимое div как [объект объекта]

Вам нужно просто присвоить значение из вашего объекта. Это ваш окончательный код

$('#std_info').html('<p>Student Name:'+ response.std_name +'</p>');

0
Rajshekar Reddy 11 Дек 2016 в 17:10

Начиная с jQuery 3.0, $ .parseJSON устарел. Для анализа строк JSON используйте собственный метод JSON.parse.

http://api.jquery.com/jquery.parsejson/

Так что, возможно, попробуйте var response = JSON.parse(data);

Также, если std_info - это идентификатор, который вы должны использовать $('#std_info')

Да, но ваша самая большая проблема заключается в следующем: .html('<p>Student Name:'+$('#name').val(response.std_name)+'</p>') вы на самом деле пытаетесь поместить объект в качестве содержимого div,

Попробуй .html('<p>Student Name: <input id="name" val="'+response.std_name+'" /></p>') (если бы я получил, ты идешь с этим)

0
Jameson the dog 11 Дек 2016 в 17:06

Используйте функцию eval вместо JSON.parse.Try ..

success: function(data) {
var response = eval(data);
console.log(response);
var name=response.std_name;
var success=response.confirmation;
if(success == 'success') {
$('#std_info').html('<p>Student Name:'+$('#name').val(name)+'</p>');
-1
Hek mat 11 Дек 2016 в 17:06

Начиная с jQuery 3.0 вы должны использовать jqXHR.done () и jqXHR.fail () вместо success и error.

Более того, начиная с jQuery 3.0, вы должны использовать JSON.parse() вместо parseJSON(). Итак, ваш звонок должен выглядеть примерно так:

$.ajax({
   url: 'your/url',
   method: 'YOUR_METHOD',
   data: your_data_object
}).done(function(response){
    response = JSON.parse(response);
    if (response.confirmation == 'success') {
        $('#std_info').html('<p>Student Name:'+$('#name').val(response.std_name)+'</p>');
  }
}).fail(function(error){
    console.log(error);
});
0
Sebastian Kaczmarek 11 Дек 2016 в 17:12