繁体   English   中英

无法传递文本框中的值以在另一个HTML页面中显示它

[英]cannot pass values from text box to display it in another HTML page

我已经使用编辑框为这些文件创建了HTML文件

<form name="form1" action="form1.html"  method="get">    
  <img src="index.jpeg" alt="Register" width="100" height="100" align="middle"><br>
  <b>First name: </b><input type="text" name="firstname" id="fname"><br>    
  <b>Last name: </b><input type="text" name="lastname"><br>    
  <b>Password: </b> <input type="password" name="pwd"><br><br>

我无法将此值传递给此变量和ID并将其显示在另一个HTML文件中

function func () {    
  var firstname = document.form1.fname.value;     
  document.getElementById("demo").innerHTML=firstname;   

  var lastname=document.form1.lname.value;    
  document.getElementById("demo").innerHTML=lastname;    
}

请帮我

您不能像这样用Javascript在页面之间传递值。 原因是Javascript是一种客户端脚本语言,这意味着它在用户的浏览器中运行,并且与服务器没有交互(除非您使用的是AJAX,否则您不会)。

为了在页面之间传递变量和数据,您需要使用服务器端语言,例如PHP。

将表单提交到要显示该表单的页面,然后使用以下代码:

<?php
    $firstName = $_GET["firstname"];   // set firstname to the name field of your input
?>

这将获取您使用表单传递给该页面的值。 如果要使用POST方法提交表单,则需要使用$_POST["firstname"]而不是$_GET

然后,您可以使用以下方法将其放在页面上:

<?php
    echo $firstName;
?>

编辑

如下所述,@ AlessandroNiciforo是正确的。 如果使用的是GET ,则可以使用下一页上的Javascript检索数据。 这是因为GET将数据附加到下一页的URL上。

作为建议在这里 ,使用这样的:

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,     function(m,key,value) {
        vars[key] = value;
    });
   return vars;
}

并用

var first = getUrlVars()["id"];
var second = getUrlVars()["page"];

请记住,如果您正在使用敏感数据(密码,地址等),则需要使用POST而不是GET POST将所有数据保留在服务器端。 这样可以防止恶意用户获取该敏感信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM