如何验证直放站中的空白文本框? [英] how to Validating blank textbox in repeater?
问题描述
大家好
在我的项目中,我需要进行验证工作:
我有一个中继器(.net 2.0,C#,VS 2k5),在此中继器中
有一列文本框,
一列Button,用于编辑文本框的值,
和Checkbox的一列,用于分配选择行
站点中继器具有一个按钮,当我单击此按钮时,复选框选中的所有行都将在数据库中更新
我必须要做的是如何选择行将不会更新,并在包含空白文本框的行上引发验证,请重点关注空白文本框
请帮助我.非常感谢
我的ASP:
hi everybody
In my project ,I am required to make a validating work:
I have a repeater (.net 2.0,C#,VS 2k5),In this repeater
there are a column of Textbox,
a column of Button that using to editing value of textbox,
and a column of Checkbox that using to assign for selecting row
Outsite Repeater a have a Button ,when I click this one,all of row selected by checkbox will update in database
I must do how to selected Rows will not update and raise a validate at Rows that contain blank textbox, focus to which blank textbox
Please help me .Thank very much
My ASP:
<asp:Repeater ID="rptOrder" runat="server" OnItemCommand="Action" OnItemDataBound="rptOrder_ItemDataBound">
<itemtemplate>
<tr class="DataRowStyle CursorHand smaller" title="Upload on : [<%#Eval("uploaddate","{0:MM/dd/yyyy}")%>] - Process On:[<%#Eval("RecordDate","{0:MM/dd/yyyy}")%>] - Upload by:[<%#Eval("uploader")%>]- Process by: [<%#Eval("processer")%>]- Undoprocess by: [<%#Eval("processerUndo")%>]-FOC Qty:[<%#Eval("TotalQty")%>]; ">
<td align="left">
<asp:ImageButton ID="ImageButton1" runat="server" CommandArgument=''<%#Eval("OrderID")%>''
CommandName="detail" SkinID="View" OnCommand="OnViewOrderDetail" OnDataBinding="btnEdit_DataBinding" />
<asp:Label ID="lbOrderId" runat="server" Text=''<%#Eval("OrderID")%>'' Visible="false">
</td>
<td align="left" önclick="<%#GetPostBackScript()%>">
<%# Eval("SupplierName")%>
</td>
<td align="left" önclick="<%#GetPostBackScript()%>">
<%#Eval("program")%>
</td>
<td align="left" önclick="<%#GetPostBackScript()%>">
<%#Eval("CustCode")%>
</td>
<td align="left" önclick="<%#GetPostBackScript()%>">
<%# Eval("CustName") %>
</td>
<td align="left" önclick="<%#GetPostBackScript()%>">
<%# Eval("Address") %>
</td>
<td align="right" önclick="<%#GetPostBackScript()%>">
<%# Eval("District") %>
</td>
<td align="right" önclick="<%#GetPostBackScript()%>">
<%#Eval("Amount","{0:#,###}")%>
</td>
<td align="right">
<asp:TextBox ID="txtsno" Visible="false" runat="server" Text=''<%#Eval("SONo")%>''
Width="98%">
<asp:Literal ID="ltsno" runat="server" Text=''<%#Eval("SONo")%>''>
<asp:Literal ID="ltvalidate" runat="server" Text=''invalid'' Visible="false">
</td>
<td align="right" önclick="<%#GetPostBackScript()%>">
<%# Eval("FOCValue","{0:#,###}")%>
</td>
<td align="right" önclick="<%#GetPostBackScript()%>">
<%# Eval("Status")%>
</td>
<td align="right">
<%--style="visibility:<%#Eval("sttchk")%>;--%>
<asp:CheckBox ID="chkCheck" runat="server" />
</td>
<td align="right">
<asp:Button ID="btnEdit" runat="server" Text="Edit" CommandArgument="argUpdate" CommandName="Action" />
<asp:Button ID="btnCancel" runat="server" Text="Cancel" CommandArgument="argCancel"
Visible="false" CommandName="Action" />
</td>
</tr>
</itemtemplate>
我的按钮:
My button:
<asp:LinkButton ID="lnkProcess" runat="server" OnClick="lnkProcess_Click" Font-Bold="True" CommandName ="Action" CommandArgument ="p">PROCESS
MyCode背后:
MyCode Behind:
<pre>protected void lnkProcess_Click(object sender, EventArgs e)<br />
{<br />
for (int i = 0; i < rptOrder.Items.Count; i++)<br />
{<br />
RepeaterItem items = rptOrder.Items[i];<br />
if (((CheckBox)items.FindControl("chkcheck")).Checked)<br />
{<br />
string oid = ((Label)items.FindControl("lbOrderId")).Text;<br />
if (((TextBox)items.FindControl("txtsno")).Text != "")<br />
{<br />
BlueOcean.Data.BonusPayment.BPClass.BPOrderProcess(oid);<br />
}<br />
else<br />
{<br />
//I must do how to validate ........................help me<br />
}<br />
}<br />
}<br />
LoadData();<br />
}</pre>
推荐答案
您可以在ELSE-part中这样编写.
you may code like this in ELSE-part.
TextBox T = (((TextBox)items.FindControl("txtsno"))
T.Focus();
Page.RegisterStartupScript("Errorlog", "<script>alert(\"Text Value is Missing\");</script>");
// you may also use following to make it easily visible.
T.BorderColor = System.Drawing.Color.Red;
return;
对于THEN部分
将id值保存在数组中.
For the THEN-part
keep the id values in a array.
ArrayList ids = new ArraList();
ids.Add(oid);
.
.
.
遍历Arraylist并在调用函数之前进行处理.
Loop through the Arraylist and process before call to function.
LoadData();
这篇关于如何验证直放站中的空白文本框?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!