当前位置: 首页 > 面试题库 >

在不使用AJAX的情况下从表单发布JSON数据

荆鸿畅
2023-03-14
问题内容

我正在尝试不使用AJAX将数据发布到REST
api。我想以JSON格式发送数据。我有以下代码,但一直试图找出如何转换输入字段并将其发布到服务器。这是我的代码尝试:

<form id = "myform" method = "post">
id: <input type = "text" id = "user_id" name = "user_id">   
data: <input type = "text" id = "user_data" name = "user_data">  
<input type = "button" id = "submit" value = "submit" onClick='submitform()'>
</form>

<script language ="javascript" type = "text/javascript" >
function submitform()
{   
 var url = '/users/' + $('#user_id').val();
 $('#myform').attr('action', url);

 //
 // I think I can use JSON.stringify({"userdata":$('#user_data').val()}) 
 // to get the data into JSON format but how do I post it using js?  
 //

 $("#myform").submit();
}

问题答案:

您可以使用json值添加一个隐藏的输入字段,如下所示-

function submitform() {
    var url = '/users/' + $('#user_id').val();
    $('#myform').attr('action', url);
    var data = JSON.stringify({
        "userdata": $('#user_data').val()
    })
    $('<input type="hidden" name="json"/>').val(data).appendTo('#myform');
    $("#myform").submit();
}

您可以使用json参数( 隐藏输入的名称 )访问json



 类似资料:
  • 我找到了这些可能的答案,但没有成功。我做错什么了吗?我确信AngularJS会提供这个功能,但是如何提供呢?

  • 问题内容: 我是AngularJS的新手,一开始,我想只使用AngularJS开发一个新的应用程序。 我正在尝试使用Angular应用程序向服务器端进行AJAX调用。 为了发送参数,我尝试了以下操作: 这是可行的,但在上也使用jQuery 。为了消除对jQuery的依赖,我尝试: 但这似乎失败了。然后我尝试了: 但这似乎也失败了。然后我尝试了: 我找到了这些可能的答案,但未成功。难道我做错了什么?

  • 我正在尝试使用FastAPI进行简单的操作。我使用 创建了一个基本结构,它只有两个属性,即 和 。 我想使用<code>post</code>操作发布这些数据-<code>{“name”:“XYZ”,“roll”:51}</code>。 我知道Swagger UI(OpenAPI)提供的的自动留档,我们可以用它来发布数据。但是我不想使用它。我想用的是使用URL直接发布数据,并希望在浏览器本身中看到

  • 在JSP中,我可以使用下面的代码从action类获取JSON。有人能告诉我,是否有一种方法可以不使用Ajax从action类接收响应(JSON)? 更新: 下面的代码用于action类。 在struts-config.xml中,我有以下动作映射: 然后,在JSP文件中,不再像上面那样使用Ajax调用,而是如下所示: 但是,键和值在执行时没有定义。JSON是在操作类中正确构建的。请帮助指出如何将JS

  • 问题内容: 我希望以下表格使用AJAX。因此,在单击命令按钮后无需重新加载页面即可显示注释。使用Java Server Faces 2.0需要更改什么? 功能:此表单提供了一个inputText来定义主题。按下命令按钮后,将搜索有关此主题的注释。注释显示在dataTable中(如果有)。否则显示为 空 。 问题答案: 您需要告诉命令按钮改用Ajax。这就像在其中嵌套标签一样简单。您需要指示它通过提

  • 问题内容: 我已经进行了一些研究,发现的大多数示例都使用表单(显然用于用户输入)来收集数据,然后通过请求对象将其传递到另一个JSP页面。 我的问题是:如果未在HTML 标记中设置参数,是否可以在JSP页面之间传递参数? 问题答案: JSP页面无法分辨手动构造的GET URL之间的区别,例如: ,而不是类似的内容: 可以通过或 那是你要的吗