Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建要提交到后端的登录表单_Javascript_Html_Forms - Fatal编程技术网

Javascript 创建要提交到后端的登录表单

Javascript 创建要提交到后端的登录表单,javascript,html,forms,Javascript,Html,Forms,我有三个标记的HTML元素和三个相应的变量。每个变量稍后在按钮onClick上引用,希望在使用JavaScript函数时,它将使用这些变量 这样,有人可以输入他们的登录名和密码,然后将其提交到我的后端,并创建一个唯一的登录ID 奇怪的是,当我将所有提交的信息更改为通用的“testuser”时,它成功地提交并向我提供了用户数据。所以我知道连接在工作,JavaScript函数也在工作。但是,当我将通用的“testuser”更改为变量时,比如usernameInput,我会得到一个控制台,上面说: “

我有三个标记的HTML元素和三个相应的变量。每个变量稍后在按钮
onClick
上引用,希望在使用JavaScript函数时,它将使用这些变量

这样,有人可以输入他们的登录名和密码,然后将其提交到我的后端,并创建一个唯一的登录ID

奇怪的是,当我将所有提交的信息更改为通用的“testuser”时,它成功地提交并向我提供了用户数据。所以我知道连接在工作,JavaScript函数也在工作。但是,当我将通用的“testuser”更改为变量时,比如
usernameInput
,我会得到一个控制台,上面说:

“WebSocket发送:{“displayName”:{},“password”:{},“userName”:{},@class”:.RegistrationRequest”,“requestId”:“1511903088030_3”}”

我的输入数据在哪里?我在HTML元素中输入了“Billy Bob”

以下是我正在编写的代码:

<!--Generic Login Features below-->
<label for="username">User Name</label><input id="usernameInput"/>
<var username = usernameInput>
<label for="password">Password</label><input id="passwordInput"/>
<var password = passwordInput>
<label for="displayname">Displayname</label><input id="displaynameInput"/>
<var password = displaynameInput>

<button onClick='gamesparks.registrationRequest(usernameInput, passwordInput, displaynameInput, registerResponse)'>Register</button>
<button onClick='gamesparks.authenticationRequest(usernameInput, passwordInput, loginResponse)'>Login</button>
<button onClick='gamesparks.accountDetailsRequest(accountDetailsResponse)'>Account Details</button>

用户名
密码
显示名
登记
登录
帐户详细信息

我做错了什么

HTML错误

Scott是正确的,您的Html是错误的。而不是

<var username = usernameInput>

使用函数使用普通JavaScript读取输入字段的值

document.getElementById('usernameInput').value


`将提供插入到该输入字段中的文本,其他字段也是如此。

和其他两个类似的字段不会执行任何操作。在HTML中,它们只是为了表示页面内容而将编程变量的语义表示为页面内容,但实际上并不为编程目的创建变量。这些行不会创建JavaScript变量。你的表单元素在哪里?请显示您的JavaScript以及前端和后端使用的JavaScript。总共有几百行,所有这些都无关紧要。您能指定希望我显示的JavaScript吗?同样,我没有表单元素。我需要一个吗?是的,您绝对需要一个
form
元素来封装所有表单字段并正确收集它们的数据。您通常没有单独的按钮来发送单独的数据,而
表单
允许您收集所有数据并将其作为一个单元发送。此外,如果您不发布JavaScript(即
gamesparks.registrationRequest
)的代码,我们无法告诉您那里可能有什么问题。您请求的JavaScript:gamesparks.prototype.registrationRequest=function(displayName,password,userName,onResponse){var request={};request[“displayName”]=显示名称;请求[“密码”]=密码;请求[“用户名”]=用户名;gamesparks.sendWithData(“注册请求”,请求,onResponse);不要将代码放在注释中。请使用其中包含的代码更新您的问题。按照您的指示,我的结果没有任何变化。我替换为document.getElementById('usernameInput').value这产生了相同的结果。添加、重命名“usernameInput”以匹配每个所需的输入后,它仍然不起作用。我甚至尝试用您的代码行替换我函数中的usernameInput(有我的更正和没有),但仍然不起作用。