如何在没有 Post 方法或任何形式的情况下将信息作为 Json 数据发送到服务器

How to send info as Json data to server without Post method or any form

本文关键字:信息 Json 数据 服务器 情况下 Post 方法 任何形      更新时间:2023-09-26

我的任务是与Json合作将数据发送到服务器,而无需实际使用"表单"或"Post",以下是我和我的前辈之间的对话:

前辈:

仅将数据发送到服务器而不提交表单 在JavaScript中

 myJsonObject.Username = document.getElementById('txtUsername').value;

这将在单击"保存"按钮时完成 在这种情况下,我们不使用表单元素 我们不使用"提交"按钮 只需一个简单的保存按钮

 onclick="saveUser()"
 function saveUser(){
 var userInfoJson = { };
 userInfoJson.Username = document.getElementById('txtUsername').value;

。等等 只需玩弄 JSON

我:

<form name="form" method="post" onsubmit="saveUser()">

会是这样吗?

前辈:

** 不要使用表单标签 不使用"提交"按钮

:
one more thing will it have <input type="text"> ?

前辈:

not sure what u mean
u can use any kind of html, i don't mind
you need to show me some coding of json and that happens in .JS file
 or in <script type="text'javascript" tag
html can be used to integrate ur user input
i don't mind u use any kind of html whether beautiful or not
I MEAN JSON here in this thread
I wan't json... json, json, json
don't bring the whole world here... talk about json
json only

那么,没有形式怎么能做到呢?

我不

明白不使用表单或提交按钮的原因,这似乎违反直觉,可能不是有效的标记。

但是,要使其正常工作,您只需绑定到普通按钮即可...

http://jsfiddle.net/Labdr6pw/

<input type="text" id="txtUsername" name="username" />
<button id="submitButton" type="button">Save</button>
var submitButton = document.getElementById('submitButton'),
    usernameInput = document.getElementById('txtUsername'),
    userInfoJson = {};
userInfoJson.Username = usernameInput.value;
submitButton.addEventListener('click', function(){
    var request = new XMLHttpRequest(); 
    request.open("POST", "webservice", true);
    request.onreadystatechange = function() {
        if (request.readyState != 4 || request.status != 200) return; 
        console.log(request.responseText);
    };
    request.send(JSON.stringify(userInfoJson));
});