asp中继器模板条件验证javascript

asp中继器模板条件验证javascript,javascript,asp.net,templates,repeater,Javascript,Asp.net,Templates,Repeater,我有一个asp中继器,它有一些项目信息、一个接受按钮、一个取消按钮和一个取消原因文本框。我希望cancel按钮验证cancel中是否有一些文本,如果没有弹出窗口,则需要输入原因。我希望“接受”按钮仅提交页面上的项目。这是我的尝试,但函数不希望找到bind txtReason <asp:UpdatePanel runat="server" ID="updatePanelAcceptOrReject"> <ContentTemplate> <as

我有一个asp中继器,它有一些项目信息、一个接受按钮、一个取消按钮和一个取消原因文本框。我希望cancel按钮验证cancel中是否有一些文本,如果没有弹出窗口,则需要输入原因。我希望“接受”按钮仅提交页面上的项目。这是我的尝试,但函数不希望找到bind txtReason

<asp:UpdatePanel runat="server" ID="updatePanelAcceptOrReject">
    <ContentTemplate>
        <asp:Repeater runat="server" ID="AcceptOrRejectRepeater" OnItemDataBound="AcceptOrRejectRepeater_ItemDataBound">
            <ItemTemplate>
                <asp:Label ID="lblDescription" runat="server" Text='<%# Bind("ItemDescription")%>'></asp:Label
                <asp:Label ID="lblReasonForCancelling" runat="server" Text="Reason for rejection"></asp:Label>
                <asp:TextBox runat="server" ID="txtReason"></asp:TextBox>
                <script type="text/javascript">
                    function fnCheckforCancelReason() {
                        var pgng = document.getElementById('<%=txtReason.ClientID%>').value.trim();
                        if (pgnd == "") {
                            alert('The textbox should not be empty...');
                            document.getElementById(txtReason).focus();
                            return false;
                        }
                    }
               </script>
               <asp:Button ID="btnReject" runat="server" Text="Reject" CommandArgument='<%# Bind("ItemID") %>' OnClientClick="javascript:return fnCheckforCancelReason()" OnClick="btnReject_Click" />
                <asp:Button ID="btnAccept" runat="server" Text="Accept" CommandArgument='<%# Bind("ItemID") %>' OnClick="btnAccept_Click" />
            </ItemTemplate>
        </asp:Repeater>
    </ContentTemplate>
</asp:UpdatePanel>
但是函数不想找到bind txtReason,我不能设置断点chrome或ie

我希望能够设置一个断点来调试pgng上的fnCheckforCancelReason打字错误:

var pgng = document.getElementById(...
if (pgnd == "") {

为什么不使用ASP.NET验证程序?如果禁用javascript,它们可以在客户端和服务器端工作。因为我认为,与传递六个或更多参数的简单javascript函数相比,它们可能会变得混乱,因为尽管示例中的逻辑很简单,但循环中只有三个控件,最终,它可能依赖于八个或九个控件来解决这个问题,或者它只是一个次要问题?我似乎仍然有一个问题,即在text/javascriptTry中解析txtReason的ID尝试将clientdmode=Static添加到文本框中。那么你不必使用,你只需使用id“原样”。看看这是否有帮助。“setfocus”行中也缺少引号。仍然无法解决,但我开始怀疑,因为有很多其他人正在使用类似的设计方法,这是另一个打字错误。。。一旦一切顺利,我会记录下来,谢谢你的帮助