Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.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
HTML输入到Javascript变量中_Javascript_Html - Fatal编程技术网

HTML输入到Javascript变量中

HTML输入到Javascript变量中,javascript,html,Javascript,Html,我一直在尝试从HTML获取文本输入,并尝试将文本输出回HTML,但由于某些原因,它似乎不起作用。将输入放在表单中是否会改变与getElementById的交互,或者formaction的第二个按钮的使用是否可能会中断这一过程 $document.readyfunction{ $submit.onclick,函数{ var test=document.getElementByIdsearchInput; $text.htmltest; } }; 搜索 随机的 测验 您需要找到元素的值,然后将其设

我一直在尝试从HTML获取文本输入,并尝试将文本输出回HTML,但由于某些原因,它似乎不起作用。将输入放在表单中是否会改变与getElementById的交互,或者formaction的第二个按钮的使用是否可能会中断这一过程

$document.readyfunction{ $submit.onclick,函数{ var test=document.getElementByIdsearchInput; $text.htmltest; } }; 搜索 随机的 测验
您需要找到元素的值,然后将其设置为HTML

$("#text").html(test.value);

编辑您的JS代码,请尝试: 编辑:


我已经更新了你的问题,伙计,检查这一个

$document.readyfunction{ $submit.onclick,函数{ var测试=document.getElementByIdsearchInput.value; $text.htmltest; } }; 搜索 随机的 测验
我想这对你有用

搜索 随机的 测验 $document.readyfunction{ $submit.onclick,函数{ $text.html$searchInput.val; } };
因为您使用的是jQuery,所以使用jQuery来获取元素的值更有意义:

使用此选项始终将文本元素内容替换为searchInput值:

$text.html$searchInput.val; 使用此选项将searchInput值附加到文本元素:

$text.append$searchInput.val; 但整个逻辑毫无意义。您正在更改一个元素的值,该值在您提交的表单之外。您应该阻止submit button click事件提交表单,或者将表单中的文本元素作为输入、文本区域或隐藏字段:

$document.readyfunction{ $submit.onclick,function e{ e、 防止违约; $text.html$searchInput.val; } }; 或者在表单中包含用于提交的文本元素:

搜索 随机的
您正在使用表单元素,因此一旦单击该按钮,表单将被重新加载。如果要向元素显示文本框值,请删除表单元素

     <input type ="text" id ="searchInput"><br>
      <button id = "submit">Search</button>
      <button formaction="https://en.wikipedia.org/wiki/Special:Random" formtarget="_Blank">Random</button>


  <div id ="text">
    <h1 id="welc"></h1>
  </div>

  <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.1.1.min.js" type="text/javascript"></script>
  <script>
  $(document).ready(function(){
    $("#submit").on("click",function(){     
    var test = $('#searchInput').val();  
    $("h1").html(test);
  });
});
  </script>

只需移除标记并进行检查。

document.getElementByIdsearchInput;这将获取值,而不是值,请确保这是您想要的。可能的重复我不尝试更改表单的一部分,我尝试在我单击“提交”按钮时将字符串输入的内容获取到JS中的变量中。当您单击“提交”按钮时,浏览器将提交表单,页面将用提交的数据刷新。文本字段位于表单外部,因此不会传递给POST/GET数据以显示或使用。您应该将文本元素移动到表单中,以便将数据传递到刷新的页面,或者取消提交事件。我要说的是,downvote是因为没有解释为什么该代码应该工作。我不知道确切的情况,有时候会有选民因为他们可以。这根本不是一个复杂的代码。任何人都可以研究它,它不言自明。如果需要任何解释,你可以在评论中加上。为20行代码添加2行解释并不是什么大问题。如果需要,我们也愿意给出解释。
     <input type ="text" id ="searchInput"><br>
      <button id = "submit">Search</button>
      <button formaction="https://en.wikipedia.org/wiki/Special:Random" formtarget="_Blank">Random</button>


  <div id ="text">
    <h1 id="welc"></h1>
  </div>

  <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.1.1.min.js" type="text/javascript"></script>
  <script>
  $(document).ready(function(){
    $("#submit").on("click",function(){     
    var test = $('#searchInput').val();  
    $("h1").html(test);
  });
});
  </script>