-2

我尝试使用以下代码将数据从一个表单接收到另一个表单。

var fname = document.getElementsByName("fname")[0];
fname.value = getUrlVars()["fname"];

现在我想将数据从表单接收到已经创建的表中。我使用了代码,因为 $("table").html("<tr><td>"+fname +"</td><td>");它不起作用。

4

4 回答 4

1

代码有两个问题。

这是一个无用的语句,您需要将结果保存到某个变量(更不用说Nmae):

document.getElementsByNmae("lname")

应该:

var lname = document.getElementsByName("lname");

然后(setinnerHTML-> innerHTML):

lname.innerHTML="lname";
于 2013-07-04T14:15:24.293 回答
1

在这份声明中,

var fname = document.getElementsByName("fname");
fname.innerHTML = "fname";

名称为“ fname ”的元素是什么?

如果它是一个像文本框这样的表单元素,那么它应该是这样的,

var fname = document.getElementsByName("fname");
fname.value = "fname";

仅当元素不是诸如pdiv等标签之类的表单元素时,您的代码才有效。

编辑代码:

我希望您的第二页是 student.html,并且您已经在此页中编写了 receiveData()。然后你需要读取url并将参数值设置为元素。就像我在下面写的一样,前提是您在表格 2 中的名称与表格 1 中的名称相同,

var fname = document.getElementsByName("fname")[0];
fname.value = getUrlVars()["fname"];

第二,你可以对文本框执行此操作,但对于收音机和下拉菜单,你需要编写 som if-else 语句。

请参阅此http://papermashup.com/read-url-get-variables-withjavascript/

希望你能得到我愿意说的。

重新编辑的代码:

使用 receiveData() 函数添加此函数。

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

单选按钮代码,

var sex = document.getElementsByName("sex");
sexValue = getUrlVars()["sex"];
for(i=0;i<sex.length;i++)
{
 if(sex[i].value==sexValue)
 {
  sex[i].checked=true;
  break;
 }
}
于 2013-07-04T15:05:45.467 回答
0

使用文档而不是您自己的想象:

var newEl = document.getElementById("newElDay");
newEl.innerHTML = document.getElementById("oldElDay").innerHTML;
于 2013-07-04T14:16:34.017 回答
0

除了人们提到的其他问题之外,也许您在 Receivedata() 中的 Javascript 代码的最后一行缺少此内容:

document.getElementById('myform').submit();
于 2013-07-04T15:17:23.353 回答