javascript如何获取表里元素的值

<script type="text/javascript">
function onSubmitForm() {
var formDOMObj = document.form1;
if (formDOMObj.sl1.value == "" )
alert("Please press the Browse button and pick a file.");
else
alert(formDOMObj.sl1.value);
return false;
}
</script>

<form action="slider_update.asp?id=<%=rs("id")%>" method="post" enctype="multipart/form-data" name="form<%=rs("id")%>" onSubmit="return onSubmitForm();">
<input name="sl<%=rs("id")%>" class="infile" type="file" >

<input type="submit" name="updateCon<%=rs("id")%>" value="更新" /></br>
</form>

先上代码如上
如果form的名称是固定的, 如name="form1", file的name="sl1", 就可以通过formDOMObj.sl1.value获取file的值
我的问题是假如我的表名是动态变化的, file的名称也是变化的, 如name="form<%=rs("id")%>" , <input name="sl<%=rs("id")%>"

请问如何获取其中的值, 我没有JAVASCRIPT的基础, 上述代码是拷贝的
请大侠详细指教
我再补充一下:
如上我用数据库动态生成3个表, 这样分别得到的3个表名称分别为 form1 form2 form3, 同时3个表里有3个input file分别为sl1 sl2 sl3, 用onSubmit触发时,我想获得这个表中的input file的值, 实际我希望能有个参数传递到onSubmitForm函数里, 请问如何修改这个函数

document.forms是一个包含页面所有表单的一个数组。 document.forms[0]就可以获取这个HTML页面里的第一个表单元素,你要取这个表单项的某个值就可以
document.forms[0].sl1.value来获取。

其实可以直接添加ID来获取。。这样更方便。如果你的ID也动态的。。那你就先我上面的方法先获取到表单。再给file那个添加ID获取这个元素。

<input type='file' />type为file没有值可以获取。也无法获取。追问

如果表的名称用固定的名称 比如: name="form1", file的名称也用固定名称 比如 name="sl1"
上述函数式可以获取值.
现在关键是我的表名成是动态的, 就不知道如何获取
我希望能有2个参数传递给 doument.表名称.file名称.value

追答

onSubmit="return onSubmitForm(this.name,document.getElementByName(this.name).getByClass("file")[0].name);";
再赋上一个getByClass的涵数
function getByClass(sClass,oParent)
{
var oParent=oParent || document;
var aEle=oParent.getElementsByTagName('*');
var aResult=[];
var i=0;

for(i=0;i<aEle.length;i++)
{
if(aEle[i].className==sClass)
{
aResult.push(aEle[i]);
}
}

return aResult;
}
不知道你看明白了么?给你那个提交检测涵数加两个参数。。代进去试试

追问

我不懂JS, 我想实现的是能否把表名和元素名传递到函数里, 然后获其值, 如下
function onSubmitForm(frm, fname) {
var formDOMObj = document.form1; -----这里改成document.frm
if (formDOMObj.sl1.value == "" )------这里改成formDOMObj.fname.value

追答

你测试了没有?

追问

你的代码 我还是不会用 我改的肯定不行了

追答

其实,我建议你还是系统的学习JS吧。。。你百度下javascript 李炎恢 教程很好。你会有收获的。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-21

下面的JS代码可以遍历指定表单中的所有元素,并输出元素的值:

    

<!DOCTYPE html>
<html>
<body>
<form id="frm1" action="form_action.aspx">
First name: <input type="text" name="fname" value="Donald"><br>
Last name: <input type="text" name="lname" value="Duck"><br>
<input type="submit" value="Submit">
</form>
<p>Return the value of each element in the form:</p>
<script>
var x=document.getElementById("frm1");
for (var i=0;i<x.length;i++)
{
document.write(x.elements[i].value);
document.write("<br>");
}
</script>
</body>
</html>

第2个回答  2013-06-12
<script type="text/javascript">
function onSubmitForm() {
var formDOMObj = document.form<%=rs("id")%>;
if (formDOMObj.sl<%=rs("id")%>.value == "" )
alert("Please press the Browse button and pick a file.");
else
alert(formDOMObj.sl<%=rs("id")%>.value);
return false;
}
</script>

<form action="slider_update.asp?id=<%=rs("id")%>" method="post" enctype="multipart/form-data" name="form<%=rs("id")%>" onSubmit="return onSubmitForm();">
<input name="sl<%=rs("id")%>" class="infile" type="file" >

<input type="submit" name="updateCon<%=rs("id")%>" value="更新" /></br>
</form>本回答被网友采纳
第3个回答  2013-06-12

可以用

var inputs = formDOMObj .getElementsByTagName("input")

得到form里面所有input,想要第i个的值,就用

inputs[i].value

javascript获取元素(javascript中获取元素的方法有哪些)
1、通过jquery的方式,使用id选择器方式获取节点,然后获取值。2、通过原生的dom方式,获取id的值。每一个HTML元素都使用id来进行一个标注,随后可以通过document.getElementById(“ID名称”)取得指定的ID元素对象,取得元素对象之后就可以对其进行操作。但是document.getElementById()只能取得一个元素信息。d...

js如何获取当前input的value
方法一:通过HTML表单和JavaScript交互 在HTML代码中,给form元素一个名字"myform",然后在JavaScript中,可以使用`document.getElementById("nn").value`来获取id为"nn"的input元素的value。示例代码如下:当点击"获取"按钮时,这个函数会弹出input的当前值。方法二:直接使用JavaScript全局变量 另一种方式...

js如何获取当前input的value值?
答案:在JavaScript中,可以通过访问input元素的value属性来获取当前input的值。详细解释:1. 理解HTML中的Input元素:在HTML中,``标签用于创建用户输入表单。用户可以输入文本、数字、日期等不同类型的值。这些值可以通过JavaScript进行访问和处理。2. JavaScript中的Value属性:每一个``元素都有一个`value...

js如何获取表单中数组的值?
value 属性为 input 元素设定值,表单的值一般是元素的value属性: 假设有以下form,拥有一个input字段(带空值预定义)以及一个提交按钮 :提取表单值代码:提交之后获取的结果是:空值:不为空:

JavaScript 如何获取Table中的某个 的值?
var a=document.getElementsByTagName("table");\/\/获取页面所有table对象,返回一个含有table对象的数组 var b=a[0].getElementsByTagName("span");\/\/a[0],表示第一个table对象,此句获取此table中所有的span对象 for(var count=0;count<b.length;count++){ alert(b[count].innerHTML);} ...

javascript中如何获取元素的ID
通常元素的ID获取使用getElementById()方法,实例如下:元素值设定为input: 在JS中获取ID值也就是“input_id”这个值: var item = document.getElementById("input_id"); 如此,所有为input_id的ID的input对象都在item中了。

bootstrap 项目如何获取 table 数据?
获取表格所有数据:使用JavaScript遍历表格的每一行和每一列,将数据以数组或者对象形式存储,以便后续处理。具体操作为:首先获取表格元素,然后通过循环遍历表格的每一行,再遍历每一行的每一列,获取列的值并存储。获取选中的数据:在Bootstrap表格中,若使用了Bootstrap的分页插件或表格选择器插件,可以通过...

javascript 获取表单中这个特殊的值(元素名称带有[]中括号)
<SCRIPT LANGUAGE="JavaScript"> <!-- var a=document.getElementsByName("a[]")for (i=0;i <\/SCRIPT>

javascript如何获取表单中相等的name的值
function output(){ for(i=0;i<text1.length+1;i++){ alert(document.all.text1(i).value);} }

js如何获取input输入框中输入的值?
1. value属性简介:每一个HTML的``元素都有一个`value`属性,这个属性存储了用户输入或选择的当前值。当用户在输入框中输入内容时,这个值会实时更新。2. 获取input值的方法:在JavaScript中,你可以通过简单地引用该元素的`id`并使用`.value`来获取用户输入的值。例如,如果你的输入框的`id`是`my...

相似回答