2011-09-07 104 views
0

我有一个HTML表单将值发布到发送JSON状态或错误消息的Web服务。此表单嵌入在Wordpress中。我如何访问返回值并显示错误消息?JSON消息返回到HTML表格

+0

看看jQuery的.ajax http://api.jquery.com/jQuery.get/ –

+0

你可以发布一些你已经有的代码吗? @Kelly更好的是:[http://api.jquery.com/jQuery.ajax/](http://api.jquery.com/jQuery.ajax/),它提供了对返回数据的更多控制。 – Bassem

+0

.get是.ajax的简写形式。它们是等价的。 –

回答

2

这将涉及一些JavaScript,我会强烈建议使用jQuery与它的ajax功能:

;(function($) { 
    $(document).ready(function() { 
    $('#form-id').bind('submit', function(e) { 
     e.preventDefault(); 
     $.ajax({ 
     type: 'post', 
     url: $('#form-id').attr('action'), 
     dataType: 'json', 
     success: function(jsonObject) { 
      if (jsonObject.error != undefined) { 
      alert(jsonObject.error.message); 
      } 
      else { 
      alert('The submission was successful'); 
      } 
     }, 
     error: function() { 
      alert('A connection error occurred. Please try again'); 
     } 
     }); 
    }); 
    }); 
})(jQuery); 

这将使一个HTTP POST包含在表单的action属性中的URL,并加载返回的JSON字符串转换成一个JavaScript对象。

+0

为了进行调试,@econner可以使用'console.log(jsonObject);'来显示格式化的json对象。 – Bassem

+0

Web服务以JSON格式返回成功状态或错误消息,如下所示: – econner

+0

{“CreateResellerResult”:{“AvailableCredits”:0,“DataKey”:“”,“Id”:“59fe4d79-7b1f-4560 -beb4-7b2f08818da4" , “MayCreateRecord”:假的, “名称”: “test1000”, “产品”:[{ “ID”: “81fa46ef-57d7-4658-8eb3-92a18c7486cf”, “ProductCount”:100,“产品名称“:”product1“},{”Id“:”0730e907-aba5-4095-8650-35bf4794ffc7“,”ProductCount“:50,”ProductName“:”product2“}]}} – econner