获取数值的表单JS 怎么写呢

获取数值的表单JS 怎么写呢,第1张

/

@see 获得表单里的数据(不光是表单,任何元素都可以)

@param id 表单的ID

@param type 要返回的类型: string返回用&拼接的字符串, object返回一个js对象, json表示返回json格式的字符串

@return 根据type而定,默认为string

/

function getFormData(id, type) {

if (getO(id) != null) {

var str = "";

var obj = new Object();

var json = "{";

var array = getO(id)getElementsByTagName("input");

var rdbArr = new Array();

var ckbArr = new Array();

for (var i = 0; i < arraylength; i++) {

if (array[i]name != null && array[i]name != "") {

if (array[i]type == null || array[i]type == "") {

array[i]type = "text";

}

var inType = array[i]typetoLowerCase();

if (inType == "text" || inType == "hidden" || inType == "password") {

str += array[i]name + "=" + array[i]value + "&";

obj[array[i]name] = array[i]value;

json += array[i]name + ":'" + array[i]valuereplace(/\'/g, "\"") + "',";

} else if (inType == "radio") {

if (!isArrayHave(rdbArr, array[i]name)) {

rdbArr[rdbArrlength] = array[i]name;

}

} else if (inType == "checkbox") {

if (!isArrayHave(ckbArr, array[i]name)) {

ckbArr[ckbArrlength] = array[i]name;

}

}

}

}

for (var i = 0; i < rdbArrlength; i++) {

var key = rdbArr[i], value = getRadio(rdbArr[i]);

str += key + "=" + value + "&";

obj[key] = value;

json += key + ":'" + valuereplace(/\'/g, "\"") + "',";

}

for (var i = 0; i < ckbArrlength; i++) {

var key = ckbArr[i], value = getBox(ckbArr[i]);

str += key + "=" + value + "&";

obj[key] = value;

json += key + ":'" + valuereplace(/\'/g, "\"") + "',";

}

array = getO(id)getElementsByTagName("textarea");

for (var i = 0; i < arraylength; i++) {

if (array[i]name != null && array[i]name != "") {

str += array[i]name + "=" + array[i]value + "&";

obj[array[i]name] = array[i]value;

json += array[i]name + ":'" + array[i]valuereplace(/\'/g, "\"") + "',";

}

}

array = getO(id)getElementsByTagName("select");

for (var i = 0; i < arraylength; i++) {

if (array[i]name != null && array[i]name != "") {

str += array[i]name + "=" + array[i]value + "&";

obj[array[i]name] = array[i]value;

json += array[i]name + ":'" + array[i]valuereplace(/\'/g, "\"") + "',";

}

}

str = (strlength > 0 strsubstring(0, strlength - 1) : str);

json = (jsonlength > 1 jsonsubstring(0, jsonlength - 1) : json);

json += "}";

if (type == "object") {

return obj;

} else if (type == "json") {

return json;

} else {

return str;

}

} else {

alertWin(id + "\u672a\u5b9a\u4e49");

}

return "";

}

第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}。这中情况通过#div1stylewidth拿不到宽度,而通过#div1offsetWidth才可以获取到宽度。

第二种情况就是宽和高是写在行内中,比如style="width:120px;",这中情况通过上述2个方法都能拿到宽度。(什么是行内,就是直接在html标签上写样式)

小结,因为idoffsetWidth和idoffsetHeight无视样式写在样式表还是行内,所以我们获取元素宽和高的时候最好用这2个属性。注意如果不是写在行内style中的属性都不能通过idstyleatrr来获取。

现在的前端制作很少直接把样式写style里了,都是写在样式表里。如果你要获取的样式没有相对应的(就像#div1stylewidth对 应#div1offsetWidth),就只能分别针对不用浏览器来获取样式表的属性了,可以试着搜索“JS 获取样式属性”之类的。

代码

var o = documentgetElementById("view");var h = ooffsetHeight; //高度var w = ooffsetWidth; //宽度

扩展资料

js编程:

JavaScript是一种脚本语言,其源代码在发往客户端运行之前不需经过编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行。直译语言的弱点是安全性较差,而且在JavaScript中,如果一条运行不了,那么下面的语言也无法运行。而其解决办法就是于使用try{}catch(){}。

Javascript被归类为直译语言,因为主流的引擎都是每次运行时加载代码并解译。V8是将所有代码解译后再开始运行,其他引擎则是逐行解译(SpiderMonkey会将解译过的指令暂存,以提高性能,称为实时编译),但由于V8的核心部份多数用Javascript撰写(而SpiderMonkey是用C++)。

因此,在不同的测试上,两者性能互有优劣。与其相对应的是编译语言,例如C语言,以编译语言编写的程序在运行之前,必须经过编译,将代码编译为机器码,再加以运行。

参考资料:

javascript_百度百科

完全没看懂你的问题。。。不过自己猜了一下你的问题,解答如下:

function

a()

{

thisa=1;

thisb=2;

thisc=3;

thisd=4;

}

function

getval()

{

aa

=

new

a();

sum

=

aa

+

ab;

}

代码没有经过测试,不过根据你的意思猜测应该是想把a()当做一个类,然后调用里面的成员。所以需要在里面加上this,这样才能在外部调用。代码如果不能用,上网查查吧。很多的。

直接使用js中的value属相即可获取到输入框的内容。

代码示例如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>获取输入框的值</title>

<script type="text/javascript">

windowonload=function(){

var bt=documentgetElementById("bt2");

var btt=documentgetElementById("bt1");

btonclick=function(){

alert(bt1value);

}

}

</script>

</head>

<body>

请输入内容<input type="text" id="bt1" /><br>

<input type="button" id="bt2" value="获取输入数据" />

</body>

</html>

效果如下:

<html>

<body>

<script language="JavaScript">

function OP()

{

//因为页面中只有一个name为text1的所以取第一个元素

var x=documentgetElementsByName("Text1")[0];

alert(xvalue);

}

</script>

<p><input id="Text1" type="text" name="text1" /></p>

<p><input type="button" value="显示输入的内容" onclick="return OP()"/></p>

</body>

</html>

原因:<input id="Text1" type="text" />没有设置name这个属性,所以 var x=documentgetElementsByName("Text1");是不对的,得用 getElementById,第二个错误,是取值。

扩展资料:

关于上述中提到的name属性

name 和 id 属性都可以与 href 属性结合起来使用,这样一个 <a> 标签就可以同时作为超链接和片段标识符使用。

可以简单地将片段标识符看作是对许多编程语言中普遍使用的 goto 语句标签的 HTML 模拟。<a> 标签中的 name 属性或者 <a> 或其他标签中的 id 属性会在文档中放置一个标识。

当标签用于链接到该文档时,就等于告诉浏览器要转到(goto)该标识。id 或 name 属性的值可以是引号引起来的任何字符串。

字符串必须是唯一的标记,不能在同一文档中的其他 name 或 id 属性中重复使用,但是可以在不同的文档中再次使用。

如果使用 id 属性,上面的实例可改写为:

<a id="#C1">第一章</a>

<a id="#C2">第二章</a>

<a id="#C3">第三章</a>

<a id="#C3">第四章</a>

js中如何获取一个id的值:

方法一、

<html>

<head>

<script

language="javascript">

function

print(){

var

a=myformnamevalue;

alert(a);

}

</script>

</head>

<body>

<form

name="myform">

<input

type="text"

name="name"

id="nn"

/>

<input

type="button"

name="button"

value="获取"

onclick="print()"

/>

</form>

</body>

</html>

这是获取网页input值的方法之一,给from一个名字然后在JavaScript的地方就可以用form的名字来调用form表单里input元素的value属性可以得到值,并把值赋给a,最后用JavaScript的alert()打印方法打印出来。

方法二、

Java代码

<html>

<head>

<script

language="javascript">

function

print(){

var

a=documentgetElementById("nn")value;

alert(a);

}

</script>

</head>

<body>

<form>

<input

type="text"

name="name"

id="nn"

/>

<input

type="button"

name="button"

value="获取"

onclick="print()"

/>

</form>

</body>

</html>

上面的两种方法都可以得到页面里input元素的值,一个是用表单名,一个是用元素id

两方面都要处理,一个是提交的时候,在数据库里先检查这个选项的人数是不是够10个,如果超了就不再提交,另外方面,在显示页面的时候,先检查这三个选项各自的人数,如果人数已超就不再显示或禁用对应的option

以上就是关于获取数值的表单JS 怎么写呢全部的内容,包括:获取数值的表单JS 怎么写呢、怎么用js获取div的当前宽度、JS函数如何获取几个数值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9718490.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存