请原谅这个菜鸟问题,但我正在努力解决这个问题。我有一些控件位于 ListView 中,用于提交一些信息。我在这里运行测试模式来执行此操作,但出现对象未定义错误。我看过的所有关于此的文章都有点模糊。在此示例中,我尝试传递文本框的 id,然后在 javascript 中从中提取值。你能告诉我我做错了什么吗?
<form id="form1" runat="server">
<asp:ScriptManager runat="server" />
<script type="text/javascript">
function ClientIDS(id) {
var info = document.getElementById(id).value;
alert(info);
return false;
}
</script>
<asp:ListView runat="server" ID="lsvTest">
<ItemTemplate>
<asp:TextBox runat="server" ID="txtTextBox" />
<asp:Button runat="server" ID="btnSubmit" Text='<%#Eval("Name") %>' OnClientClick="ClientIDS('<%=txtTextBox.ClientID %>')" />
</ItemTemplate>
</asp:ListView>
</form>
谢谢
最佳答案
如果你想使用jquery
,那么试试这个
只需将按钮onclientclick
替换为这个
OnClientClick="ClientIDS(this);"
然后在 asp:listview
中找到您之前的输入文本
function ClientIDS(obj) {
var txt = $(obj).prevAll('input[id*="txtTextBox"]:first');
alert($(txt).val());
return false;
}
关于javascript - 将 clientID 传递给 javascript 并提取值,澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808779/