2013-04-05 2 views
2

Я пытаюсь отправить JSONКак отправить форму данных json jQuery?

снабжать струной, тетивой и т.п.
var json = {"city":value1, "country":value2}; 
$.ajax({ 
    url : url, 
    data : json, 
    dataType : 'json', 
    success : function(response) { 
     alert(response); 
    } 
}) 

В URL, к которому я делаю AJAX вызов я не получаю, как получить эту строку значение там? Что я должен использовать request.getParameter? Каким должно быть значение в параметре?

+1

Вы фактически не отправляете json. – Musa

+0

Вы пропустили скобку, я добавил ее для вас (после 'alert (response)') – MMM

+0

@MMM: Да. Я ошибся. Спасибо за редактирование. – NewUser

ответ

2

Это может быть плохой идеей, но сделал работу. Спасибо всем за то, что вы делились своими мыслями, с трудом отправляли данные. Я видел все предложенные ответы @baadshah, но я не смог реализовать ни одного. :(. Я переосмыслен проблема.

Моя проблема в том, что я не могу получить данные JSON на странице на стороне сервера, где я был в состоянии получить доступ к другим элементам. Мой HTML страницы была одна из этих

<input type = "text" name = "fname" class = "imp"/> 

В моей странице JSP я мог бы использовать

String fname = request.getParameter("fname"); 

После того, как застрял в течение более двух часов и разочарованы, я думал по-другому. Это решение, которое я нашел. Эта проблема будет решена, если я могу клуб строка JSON с любым входным тегом wi го действительного имени. В следующий момент я добавил эту строку в тег скрипта

$('input[name=hide]').val(json); 
var dataToBeSent = $("form#hidden").serialize(); 

В HTML-части я добавил следующий фрагмент.

<form name="hidden" id="hidden"> 
    <input type="hidden" name="hide"/> 
</form> 

Это решило мою проблему. Это может быть не самый лучший способ, но он выполнил эту работу.

+0

На самом деле трудно получить проблему, и ваш счетчик тоже выглядит многообещающим .. cheers :) +1. –

0

type: "POST"

должен сделать трюк.

+0

Что следует использовать в request.getParameter()? – NewUser

+0

Получение сообщения об ошибке не определено .. :( – NewUser

+0

@ Dibya проверить с моим ответом. Вернитесь назад, если возникнут какие-либо проблемы. –

3

Ajax запрос:

var jsonObj= { jsonObj: [... your elements ...]}; 

    $.ajax({ 
     type: 'post', 
     url: 'Your-URI', 
     data: JSON.stringify(jsonObj), 
     contentType: "application/json; charset=utf-8", 
     traditional: true, 
     success: function (data) { 
      ... 
     } 
    }); 

на стороне сервера:

String city = request.getParameter("city"); 

String country= request.getParameter("country"); 
+0

По-прежнему получает нуль. – NewUser

+0

Фактически что вы видели в firebug? Каковы ценности, происходящие с клиентской стороны? Вы видели в firebug? –

+0

В принципе, я не знаю, как отправить этот параметр на страницу JSP на стороне сервера. Я не получаю правильное значение в JSP, что приводит к некорректному выводу из страницы JSP, я получаю сообщение об ошибке формы AJAX cal л, о котором я не указал в этом вопросе. – NewUser

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