编写JS的时候,总会调用的网页上的控件,今天有心情,把获得网页上的控件方法写了下,有不足,请补充.
【总结】一般我喜欢使用:document.getElementById()和document.all().现在觉得document.all.*比较不错!
关于其更深一步的原理暂不清楚,希望有明白的人给个深入讲解的链接!!
本帖以获得页面的text文本为例,获得控件后为其赋值为"你好!"
【附一:方法大全】
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>获得网页控件的方法大全</title>
<script language="javascript">
function AXzhz()
{
//【AX为文本框的id,通过下面的方法对文本框赋内容】
//【根据控件ID】
document.getElementById("AX").value="你好!" ;
//document.all("AX").value="你好!";
//document.all.AX.value="你好!";
//不成功 document.AX.value="你好!";
//document.body.all("AX").value="你好!";
//document.body.all.AX.value="你好!";
//不成功 document.body.getElementById("AX").value="你好!";
//formid.AX.value="你好!";
//不成功 formid.getElementById("AX").value="你好!";
//不成功 formid.all.getElementById("AX").value="你好!";
//formid.all.AX.value="你好!";
//formid.all("AX").value="你好!";
//【根据控件name,返回的是一个数组集合,再通过下标获得控件】
//document.getElementsByName("textfield")[0].value="你好!";
//不成功 formid.all.getElementsByName("textfield")[0].value="你好!";
//不成功 formid.getElementsByName("textfield")[0].value="你好!";
//【根据标签,返回的是一个数组集合,严格来说是获得标签中的内容,估计用到的机会不是很多】
//document.getElementsByTagName("td")[1].innerHTML="你好!";
}
</script>
</head>
<body>
<form id="formid">
<table width="200" border="1">
<!--title是鼠标在上面的时候出现的提示-->
<tr title="快啊快啊!!" onclick="AXzhz()">
<td bgcolor="#FF9933">你点我啊!!<br>
<INPUT TYPE="text"value="根据标签测试时使用,请仔细观察结果!">
</td>
</tr>
<tr>
<td bgcolor="#0099FF"><p>AXzhz制作<br/>
<input type="text" name="textfield" value="我要给这个文本框赋值!" id="AX"/>
</td></p>
</tr>
</table>
</form>
</body>
</html>
【附二:getElementsByName详细】
<SCRIPT>
function fnGetNames(){
// Returns a collection with 2 INPUT type=text elements.
var aInput=document.getElementsByName("firstName");
document.all.AX.value=aInput[0].value+aInput[1].value;
}
</SCRIPT>
<INPUT TYPE="text" id="AX">
<INPUT TYPE="text" NAME="firstName">
<INPUT TYPE="text" NAME="firstName">
<INPUT TYPE="button" VALUE="Get Names" onclick="fnGetNames()">
【附三:getElementsByTagName详细】
<SCRIPT>
function AXzhz()
{
var aSpans = oDiv.getElementsByTagName("SPAN");
document.all.AX.value=aSpans[1].innerHTML;
}
</SCRIPT>
<input name="text" type="text" id="AX" width="400px">
<DIV id="oDiv"><label onClick="AXzhz()">你点我啊!</label><br>
<SPAN>Immediate Child
<DIV>
<SPAN>Child of Child DIV
<INPUT TYPE="text" NAME="firstName" value="AX制作!">
</SPAN>
</DIV>
</SPAN>
</DIV>
分享到:
相关推荐
delphi10.4.1+js+TEdgeBrowser控件编写的获取网页源码demo,同时分享TEdgeBrowser控件!
本工程VC2008 一个简单控件与网页交互的例子,js通过点击事件获取网页中的链接地址,js把链接地址作为参数调用控件,控件把结果返回。
extjs控件,是本科的毕业设计,最后获得优秀,老师评价非常好。主要有图表控件、一级、二级、三级联动下拉列表框控件
模拟点击或输入网页上的控件, 模拟人点击网页上的按扭,选择框,模拟人输入密码。。。。
lablview 网页抓取天气预报。利用前面板的.net容器,插入.net控件(WebBrowser),调用Navigate2方法,输入URL,然后从其属性Dcument获得数据。。。。
获得IE控件句柄的源代码,直接可以运行。
多线程delphi Http 下载文件或者获取网页内容控件,不卡界面
VB无控件获取网页源代码 可以在无webbrowsers的情况下提交数据、下载数据等
收集整理的2个不用控件获得某网页源代码的vb源代码
VB在webbrowser控件中使用Document.body.innerhtml获取网页框架内的网页代码
网上大部吩是用findwindowex枚举法,如果一个窗体上有多个网页控件,怎么区分哪个是Webbrowser1,Webbrowser2的句柄? 我用VB6创建多线程,在线程中加载Web控件,结果控件出来了,但是显示不了网页. 正常的应该有3层...
与您的网页系统进行无缝整合,使您的系统可自如地上传文件,并能及时获取与上传文件相关的各种信息。控件提供各种调用的参数和方法,同时还有各个状态的回调函数,无论您使用自带的标准界面,或是使用自己定制的...
取MAC地址的网页控件OCX(MFC/ATL)源码 有问题联系:aidfen@yahoo.cn
onoffline.zip 在线检测和断开internet(14KB) 34,ping.zip ping一个主机(24KB) 35,popmail.zip 从pop邮件服务器上获得邮件的控件(20KB) 36,smtp.zip 通过smtp服务器发送邮件的控件(19KB) 37...
本程序使用多线程从特定网页中提取textarea块中的内容。 具体从http://www.veryhuo.com提取中间演示textarea内的html文本,从(网页特效代码)->(详细分类)->html网页中textarea内容,程序内使用了1.多线程 2.正则...
Delphi多线程下载文件 获取网页内容控件,通过HTTP的方式多线程下载,这不是一个完整的程序实例,只是一个模块的功能代码。
【阳光有点冷Delphi系列】 D10.3 Rio可用谷歌控件 CEF4Delphi DcefBrowser TChromeTabs JS与网页元素交互控制实例源码 本人在DelphiXE10.3下亲自测试成功!
网页制作 web服务器控件 样式控制 页面布局
她具备优雅的内部代码,良好的性能体验,和完善的皮肤体系,并且完全开源,你可以任意获取开发版源代码,一扫某些传统日期控件的封闭与狭隘。layDate延续了layui一贯的简单与易用,本着资源共享的开发者精神和对网页...
网页上调用已开发的ActiveX控件(控件功能:获取串口数据)适用于ID卡刷卡时读取卡条码(支持读卡器型号:Mango6H10d)