javascript - 在 javascript 函数中获取中继器内的控件以进行验证

标签 javascript jquery asp.net vb.net

我将多个控件放入一个 id =“rpContacts”的中继器控件中。中继器放置在 id =“ParentTable”的表内。 我需要验证中继器内的控件(例如文本框 - txtLastName)是否存在中继器外另一个文本框中的重复值。 验证函数由中继器外部的自定义验证器调用。

问题是我无法在我的 javascript 函数中获取中继器及其内部控件的客户端 ID。

如果我提供渲染的 ClientId,我可以获取转发器内控件的值

$find('ctl00_body_content_rpContacts_ctl00_txtLastName').Value; 

但是该控件的客户端 ID 会针对中继器的每一行而更改。

即。对于第二个转发器行中的 txtZip,其 id 将为 'ctl00_body_content_rpContacts_ctl01_txtLastName'。

任何建议我如何进行此验证。

--

中继器代码:

<telerik:RadAjaxPanel ID="AjaxPanel1" runat="server" ClientEvents-OnRequestStart="conditionalPostback">
    <table class="ParentTable">
        <asp:Repeater ID="rpContacts" runat="server">
            <ItemTemplate>
                <tr> <td> 
                    <table class="ParentTable" runat="server" id="tblEC"> 
                        <tr> <td> <div> 
                            <asp:TextBox ID="txtLastName" runat="server" Width="180"/> 
                        </div> </td> </tr> 
                    </table> 
                </td> </tr> 
            </ItemTemplate> 
        </asp:Repeater> 
    </table> 
</telerik:RadAjaxPanel>

最佳答案

这里是一个简单的demo,通过它可以获取repeater内控件的id和value

 <asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
            <ItemTemplate >              
                <asp:TextBox ID="lblSubject" runat="server" Text='<%#Eval("Name") %>' Font-Bold="true"/><br />
            </ItemTemplate>
        </asp:Repeater>

而 jquery 将是

<script type="text/javascript">
        $(document).ready(function () {             
            $('[id*=Repeater1_lblSubject]').on('change', function () {
                var id = $(this).attr('id');
                var value = $('#' + id).val();                  
                alert(id+'_'+value);
            });
        });
    </script>

关于javascript - 在 javascript 函数中获取中继器内的控件以进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24358678/

相关文章:

c# - 如何在 c# 中调用 (web) Button.Click?

c# - Asp.net:在 foreach 循环中处理 null

javascript - Groovy 可以运行 JavaScript 吗?

javascript - 如何测量 ajax 调用的进度?在 Php 中使用 jquery/ajax

javascript - 如何在 Javascript 中对每个数组元素运行函数

php - 折线图生成

jQuery - innerText 以插入的选择器开始

asp.net - SelectPdf .net 的安全异常

Javascript 改变颜色

javascript - Coffeescript - 方法链与函数参数 [2] 或使用函数而不是参数