2014-10-30 65 views
0

访问我有这个文本框indside一个DataList文本框的id是不是在JavaScript

tr> 
    <td><h5>Email</h5> <asp:TextBox ID="tb_email" CssClass="tb_orderByPhn" runat="server" /> </td> 
</tr> 

和一个按钮来调用JavaScript作为

<tr> 
    <td> <asp:LinkButton id="btn_order" class="btn btn-lg btn-block btn-success btn_rad " OnClick="btn_order" OnClientClick=" return validate_order()" runat="server" >Order now <i class=" glyphicon glyphicon-chevron-right " ></i></asp:LinkButton></td> 
</tr> 

在上述按钮点击我打电话javascript函数.Upto这是好的,但它不会识别文本框ID为什么?

function validate_order() { 

    alert("ok"); 
    var name = document.getElementById('<%=tb_email.ClientId%>').value; 
    alert(name); 

} 

它给出了错误:名称'tb_email'在当前上下文中不存在。

+1

哪个Asp.Net版本您使用:否则ASP.NET参考改变控制ID,当它通过连接父命名容器与控制等

的ID值他们呈现给客户端?如果.NET> = 4,那么在asp.net文本框上使用ClientIDMode =“static”并尝试一下。因为asp.net可能会在控制ID呈现给客户端时附加一些引用ID等来更改控件ID。 – 2014-10-30 07:11:42

+1

检查浏览器中呈现的页面的HTML,并查看它创建的ID。 – Rex 2014-10-30 07:33:10

+0

Wow..the ID显示'ccont_Dl_products_tb_email_0' – Chelsea 2014-10-30 07:50:52

回答

0

尝试下面的代码:

function validate_order() { 

    alert("ok"); 
    var name = document.getElementById('tb_email.'+'<%=ClientId%>').value; 
    alert(name); 

} 
+0

显示没有错误,但没有alertbox为好。 – Chelsea 2014-10-30 07:36:10

相关问题