使用按ID获取元素进行用户输入

时间:2016-03-08 21:01:45

标签: javascript

我正在尝试对此网络应用进行编码,让用户输入有关其设备的重要信息,然后将其放在javascript中的相关位置。到目前为止,这是我的代码。

<script type="text/javascript">
        function update() {
            var key = document.getElementById("key").value;
            if (input.length < 40) {
                alert("Please enter a valid input");
                return;
            }
           document.getElementById("access key").innerHTML;
        }
</script>
<script type="text/javascript">
    function update() {
        var device_id = document.getElementById("device_id").value;
        if (input.length < 24) {
            alert("please enter a valit input");
            return;
        }
        document.getElementById("device_id").innerHTML;
    }

    </script>
<p><input type="text" id="key" autofocus placeholder = "Enter product key here" /></p>
<p><input type="text" id="device_id" autofocus placeholder = "Enter device ID here" /></p>
<p><input type="submit" value="Submit" onclick="update()"/></p>


   <h1>Rotary Gate Systems</h1>



    <article>
        <a href="#" class="button open_button">Open</a>
    </article>
    <article>
        <a href="#" class="button close_button">Close</a>
    </article>

    <article>
        <p class="status_closed status_button">CLOSED</p>
        <p class="status_open status_button">OPEN</p>
        <p class="status_none status_button">NO CONNECTION</p>
    </article>



    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.js'></script>
    <script>/*jslint browser: true*/
/*global $, jQuery*/
/*jshint strict: true */

/*EDIT THESE VARIABLES*/
//key is the same as your 'access token'
var key = "key"

//device_id is the same as the 'core id'
var device_id = "device_id"

我想我可能会在提交按钮中遗漏某些内容,或者我正在尝试做的事情可能无法使用此属性。有人可以看看这个,让我知道我可能搞砸了吗?

2 个答案:

答案 0 :(得分:1)

您需要将条件语句更改为

if (key.length < 40) {

if (device_id.length < 40) {

因为input函数中没有定义update()

此外,您应该考虑将两个update()函数合并为一个,以便在提交表单时对keydevice_id进行有效性检查。

答案 1 :(得分:0)

根据您的评论,您可能会尝试使用两个key元素中的值更新device_id<input>变量。

您应该了解JavaScript中的变量范围,以确保您可以访问这些变量。

如果函数运行时keydevice_id变量在范围内,您可以直接为它们分配值。不要使用var关键字在分配之前,或者您要定义新的本地范围变量,而不是从外部范围更新现有变量。

您也不能在同一范围内定义两个具有相同名称的函数(在本例中为update);只有最近定义的功能才有效。

&#13;
&#13;
var key = "key";
var device_id = "device_id";

function update() {
  var tempkey = document.getElementById("key").value;
  if (tempkey.length < 40) {
    alert("Please enter a valid key.");
    return;
  }else{
    key = tempkey;
  }
  tempdevice_id = document.getElementById("device_id ").value;
  if (tempdevice_id.length < 24) {
    alert("please enter a valid device ID.");
    return;
  }else{
    device_id = tempdevice_id;
  }
}
&#13;
<p>
  <input type="text" id="key" autofocus placeholder="Enter product key here" />
</p>
<p>
  <input type="text" id="device_id" autofocus placeholder="Enter device ID here" />
</p>
<p>
  <input type="submit" value="Submit" onclick="update()" />
</p>
<h1>Rotary Gate Systems</h1>
<article>
  <a href="#" class="button open_button">Open</a>
</article>
<article>
  <a href="#" class="button close_button">Close</a>
</article>
<article>
  <p class="status_closed status_button">CLOSED</p>
  <p class="status_open status_button">OPEN</p>
  <p class="status_none status_button">NO CONNECTION</p>
</article>
&#13;
&#13;
&#13;