JS如何得到Repeater控件里面input控件的ID

JS如何得到Repeater控件里面input控件的ID,第1张

你要想获得Repeater里服务器控件(runat="server")的值 必须先知道Repeater里服务器控件ID的命名方式 如果你的页面里的数据只是只读数据可以采用“pwroselove”提供的方法 去掉runat="server" 自己为控件的ID命名 如果你需要和后台交互 就可以用下面的方法

首先Repeater里服务器控件ID的命名方式是 RepeaterClientID_ctl行号_控件名 行号是从00开始的两位数00 01 02 如 Repeater1_ctl00_lblBegin 表示Repeater里第一行lblBegin的ID 给你写个例子你就明白了 代码如下

<%@ Page Language="C#" %>

<%@ Import Namespace="SystemData" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">

<script runat="server">

protected void Page_Load(object sender, EventArgs e)

{

using (DataTable dataTable = new DataTable())

{

dataTableColumnsAddRange(new DataColumn[] { new DataColumn("Begin"), new DataColumn("Deadline") });

dataTableRowsAdd(new object[] { "123", "A" });

dataTableRowsAdd(new object[] { "234", "B" });

dataTableRowsAdd(new object[] { "345", "C" });

Repeater1DataSource = dataTable;

Repeater1DataBind();

}

}

</script>

<html xmlns=">

<head runat="server">

<title></title>

</head>

<body>

<form id="form1" runat="server">

<div>

<asp:Repeater ID="Repeater1" runat="server">

<ItemTemplate>

<input id="lblBegin" runat="server" value='<%# Eval("Begin")%>' type="text" />

<input id="lblDeadline" runat="server" value='<%# Eval("Deadline")%>' type="text" />

<br />

<br />

</ItemTemplate>

</asp:Repeater>

</div>

<script type="text/javascript">

var repeaterId = '<%=Repeater1ClientID %>';//Repeater的客户端ID

var rows = <%=Repeater1ItemsCount%>;//Repeater的行数

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

alert(documentgetElementById(repeaterId + "_ctl" + getrownumber(i) + "_lblBegin")value);

alert(documentgetElementById(repeaterId + "_ctl" + getrownumber(i) + "_lblDeadline")value);

}

function getrownumber(i) {

if (i > 10) {

return i;

}

else {

return '0' + i;

}

}

</script>

</form>

</body>

</html>

因为外面还有一个Repeater控件嵌套着,你这样当然取不到 CheckBoxList的ID,

CheckBoxList ck = Repeater1FindControl("CheckBoxListPermissions") as CheckBoxList ;

ckclientID这样才能拿到CheckBoxList 控件的ID吧

windowonload = function(){

var arr = documentgetElementsByTagName('button');

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

arr[i]onclick = function(){

alert(thisid);

}

}

}

<button id="b1">b1</button>

<button id="b2">b2</button>

<button id="b3">b3</button>

<button id="b4">b4</button>

方法有两种:

1、通过jquery的方式,使用id选择器方式获取节点,然后获取值。

2、通过原生的dom方式,获取id的值。

每一个HTML元素都使用id来进行一个标注,随后可以通过documentgetElementById(“ID名称”)取得指定的ID元素对象,取得元素对象之后就可以对其进行 *** 作。

但是documentgetElementById()只能取得一个元素信息。

documentgetElementById(“id”) 获取到的是整个对象。

documentgetELementById(“id”)innerHTML;才可以获取到其中的内容。

documentgetElementById('con')获取的只是P标签,返回的[objectHTMLParagraphElement]。

documentgetElementById('con')innerHTML获取的才是P标签里的内容,返回的是JavaScript。

扩展资料:

JavaScript脚本语言具有以下特点:

(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等 *** 作JavaScript都可直接对这些事件给出相应的响应。

(5)跨平台性。JavaScript脚本语言不依赖于 *** 作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。

不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。

而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。

同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Nodejs的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。

参考资料来源:百度百科-javascript

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

用JQuery

开头$("[id^=AA]")

结尾$("[id$=AA]")

这样能返回一组对象,前面的表示所有元素,你可以视情况修改,如果能保证返回的是一个对象,可以直接$("[id^=AA]")val()或者$("[id^=AA]")html(),否则需要遍历:

$("[id^=r]")each(function(){

alert($(this)html());

//alert($(this)val());

});

用this,this表示当前对象,你直接获取当前对象的ID,Value,和name 就行了,不需要事先知道控件的ID或者name,下面的例子alert出来了控件的三个属性:

<input id="txt" type="text" value="我们请为您返回数据。" onClick="javascript:alert(thisID+'--'+thisvalue+'--'+thisname)" />

lbk=documentgetElementById('vocation')value;

text=documentform2companyvalue;

这是我自己做的,vocationa是列表框的控件id和name,form2是表单name,company是控件name和id,其他一般的控件也就这两种形式,你可以自己试,列表框就不能用第二种,可以自己尝试一下。

以上就是关于JS如何得到Repeater控件里面input控件的ID全部的内容,包括:JS如何得到Repeater控件里面input控件的ID、js获取服务器控件CheckBoxList的ID、js 如何在多个按钮中获取点击按钮的id值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9504133.html

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

发表评论

登录后才能评论

评论列表(0条)

保存