gpt4 book ai didi

javascript - 检索动态创建的元素的值

转载 作者:太空狗 更新时间:2023-10-29 16:47:24 31 4
gpt4 key购买 nike

我已经创建了一个 HTML 表单,在这个表单中,当我点击一个按钮时,它会根据预定义的标准创建输入文本字段,这工作正常。现在,当我尝试使用警报检索在那些创建的文本字段中输入的值时,我无法这样做。

我有两个问题

  1. 从动态创建的文本字段中检索输入的最佳方式是什么?
  2. 你能告诉我为什么我写的代码不起作用吗

HTML代码

<BODY>
<FORM>
<BR/>
<div align = "center">
<br /><br />
<INPUT type="button" value="Click To Enter Values" onclick="getkeywords()"/>
</div>
<div align="center" id="d_div">
<form name="permavalues" id="d_form">
</form>
<br/> <br/>
</div>
</FORM>

我正在使用的 javascript 代码是这样的:

function getkeywords() {
var index_array = new Array();
var myString = "one and a two and a three = $ and four = $ and five = $";
var splitresult = myString.split(" ");

for(i = 0; i < splitresult.length; i++)
{
if (splitresult[i] == "$" && i > 1 ) //retireving the keywords..
{
add(splitresult[i-2]);
}
}
}

在getkeywords中调用的add函数:

function add(s) {
//Create an input type dynamically.
var element = document.createElement("input");
//Assign different attributes to the element.
element.setAttribute("type", "text");
element.setAttribute("value", s);
element.setAttribute("name", s);
element.setAttribute("id", s);

var foo = document.getElementById("d_form");

//Append the element in page (in span).
foo.appendChild(element);
alert("Value=" + document.getElemebtById(s).value);
}

我认为 element.setAtrribute("id",s);

一定是我弄错了

最佳答案

主要问题是您不能将表单放入另一个表单中。请删除您的 HTML 代码第 2 行和第 13 行。

另一个问题是你的错字,正如 IvanL 所说。

其他代码没问题。

为您提供经过全面测试的工作代码,如下所示。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>test</title>
<script language="javascript">
function getkeywords() {
var index_array = new Array();
var myString = "one and a two and a three = $ and four = $ and five = $";
var splitresult = myString.split(" ");

for(i = 0; i < splitresult.length; i++)
{
if (splitresult[i] == "$" && i > 1 ) //retireving the keywords..
{
add(splitresult[i-2]);
}
}
}
function add(s) {
//Create an input type dynamically.
var element = document.createElement("input");
//Assign different attributes to the element.
element.setAttribute("type", "text");
element.setAttribute("value", s);
element.setAttribute("name", s);
element.setAttribute("id", s);

var foo = document.getElementById("d_form");

//Append the element in page (in span).
foo.appendChild(element);
alert("Value=" + document.getElementById(s).value);
}
</script>
</head>
<BODY>
<BR/>
<div align = "center">
<br /><br />
<INPUT type="button" value="Click To Enter Values" onclick="getkeywords()"/>
<br><br><br>
<input type="button" value="add" onclick="add('tt')">
</div>
<div align="center" id="d_div">
<form name="permavalues" id="d_form">
</form>
<br/> <br/>
</div>
</body>
</html>

关于javascript - 检索动态创建的元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13489618/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com