0

在我的 JSP 文件中,有一个向 Restlet 服务器发送“POST”请求的表单。然后,Restlet Server 将返回一个 JsonRepresentation,如何获取 Json 并在我的 JSP 中显示 Json。像这样?但似乎不起作用,为什么?

    <div>
       <form id="simpleForm" method="post" enctype="multipart/form-data">
          <input type="text" name="zi"></input>
          <input type="file" class="file" name="tupian"></input>
          <input type="submit" value="query"></input>
       </form>
     </div>
     <script>
      $("#simpleForm").submit(function(event) {
         alert("success");
         event.preventDefault();//next, I want to post the form on the up to the Reselet Server and deal with the result come from the server,but the server does not work 
         $.post("http://127.0.0.1:9192/CalligraphyWordService",$("#simpleForm").serialize(),function(data) {
         .......

         });
     });
    </script>
4

2 回答 2

0

您应该使用 ajax 将数据发送到服务器并获得响应,然后使用该响应更新您的页面

如果您是 JavaScript/Ajax 的新手,最好使用jQuery 之类的库

jquery 中的简单 ajax 帖子如下所示:

$.post('url/to/your/reslet', function(json_data) {
    var data = $.parseJSON(json_data);
    var xxx = data.xxx; // read property of your json object
    // then you can use xxx to update your page with JavaScript
});
于 2012-04-27T07:21:32.203 回答
0

建议你禁用提交事件的默认动作,使用ajax异步提交表单。因此,当他们返回 json 响应时,您可以做任何您想做的事情来处理它。如果您使用 jquery,代码可能如下所示:

$('your_form_id').submit(function(event) {
    event.preventDefault();  // prevent the default action of submit event so that your browser won't be redirect

    $.post('your_Restlet_url', function(data) {
        // update the page using the passed in data
        ...
    });
});
于 2012-04-27T06:02:10.113 回答