js中取得控件在getElementsByName("Name")中是第几个?

来源:百度知道 编辑:UC知道 时间:2024/05/29 02:02:29
js中取得控件在getElementsByName("Name")中是第几个?
我是.net中repeater控件动态生成的控件。
<asp:Repeater id="rep1" runat="server">
<ItemTemplate>
<input name="score_one" type="text" value='<%# Eval("score")%>' readonly="readonly" />
<select name="num">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
</select>
<input name="score_all" type="text" value="error" readonly="readonly" />
</ItemTemplate>
</asp:Repeater>
我想做到的效果是选择select的选项,可以从第一个input取得值,和select选择的值相乘,无刷新就能改变第二个input的值。这个应该用JS就能做到了吧。
我原来的想法是改变select选项的时候,取得该控件在getElementsByName中是第几个控件n,然后根据这个n值来取得第一个input的getElementsByName("Name")[n]

取得select的选中项这样就可以的

var a=document.getElementsByName("num").value;

在select里写onchange方法
<select name="num" onchange="jsfs()">
<option selected="selected">1</option>
<option>2</option>
<option>3</option>
</select>

然后在js里补充jsfs()方法
<script type= "text/javascript">
function jsfs()
{
var a=document.getElementsByName("num").value;
var b=document.getElementsByName("score_one").value;
document.getElementsByName("score_all").value=a*b;
}
</script>

在select添加一个js事件并在服务端生成索引
比如onchange=<%# i%> 这样那么前面的名称也是一样的在计算的时候你看下name 规律就可以了很好算的