[問題] 請教ASPX的高手(驗證方面)
小弟目前正在做購物車
不過卡在一個地方
就是數量欄位的驗證
我先簡單說明我的做的方式
我拉個表格裡面有 第一欄(產品編號) 第二欄(表單括住數量欄位、加入購物車按紐
隱藏欄位繫結產品編號) 隱藏欄位是為了能夠在新增時能夠知道新增哪一筆編號的產品
整個表格有使用重覆區域
問題在於數量欄位 因為不能讓消費者輸入空值或是負數中文字等等
我有寫個JAVE的先判斷"空值"做測試
如果沒有使用重複區 意指產品顯示單筆時 它可以判斷
但如果使用了重複區域 它就無法判斷
我目前測試出來好像是使用了重複區域時他無法判斷是哪個表單
在此求助各位的幫忙 ^^
以下是程式碼 (重複跟未重複)
未重複
<MM:DataSet
id="DataSet1"
runat="Server"
IsStoredProcedure="false"
ConnectionString='<%#
System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_gow")
%>'
DatabaseType='<%#
System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_gow")
%>'
CommandText='<%# "SELECT * FROM dbo.A5_Product" %>'
Debug="true"
></MM:DataSet>
<div align="center">
<table width="326" border="1">
<tr>
<td width="115"><%# DataSet1.FieldValue("p_no", Container) %></td>
<td width="201"><form action="" method='POST' name='form1' id="form1"
onclick="return cc()">
數量
<label>
<input name="Submit" type="submit" value="go"/>
</label>
<input name="tno" type="hidden" id="tno" value='<%#
DataSet1.FieldValue("p_no", Container) %>' />
<input type="hidden" name="MM_insert" value="form1">
<label>
<input name="qty" type="text" id="qty" value="1" />
</label>
</form></td>
</tr>
</table>
</div>
</body>
</html>
<SCRIPT >
<!--
function cc(a)
{
var Err = true
//var b = document.getelementbyid("qty"+a);
if (document.form1.qty.value == "")
{
Err = false ;
}
//------------------------------------------------------
if (Err)
{
alert("OK")
}
else
{
alert('error!')
}
return Err
}
//-->
</SCRIPT>
重複區域時
<MM:DataSet
id="DataSet1"
runat="Server"
IsStoredProcedure="false"
ConnectionString='<%#
System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_gow")
%>'
DatabaseType='<%#
System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_gow")
%>'
CommandText='<%# "SELECT * FROM dbo.A5_Product" %>'
Debug="true" PageSize="10" CurrentPage='<%#
IIf((Request.QueryString("DataSet1_CurrentPage") <> Nothing),
Request.QueryString("DataSet1_CurrentPage"), 0) %>'
></MM:DataSet>
<div align="center">
<table width="326" border="1">
<ASP:Repeater runat="server" DataSource='<%# DataSet1.DefaultView %>'>
<ItemTemplate>
<tr>
<td width="115"><%# DataSet1.FieldValue("p_no", Container) %></td>
<td width="201"><form action="" method='POST' name='form1'
id="form1" onclick="return cc()">
數量
<label>
<input name="Submit" type="submit" value="go"/>
</label>
<input name="tno" type="hidden" id="tno" value='<%#
DataSet1.FieldValue("p_no", Container) %>' />
<input type="hidden" name="MM_insert" value="form1">
<label>
<input name="qty" type="text" id="qty" value="1" />
</label>
</form></td>
</tr>
</ItemTemplate>
</ASP:Repeater>
</table>
</div>
</body>
</html>
<SCRIPT >
<!--
function cc(a)
{
var Err = true
//var b = document.getelementbyid("qty"+a);
if (document.form1.qty.value == "")
{
Err = false ;
}
//------------------------------------------------------
if (Err)
{
alert("OK")
}
else
{
alert('error!')
}
return Err
}
//-->
</SCRIPT>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.130.149.50
→
06/07 15:14, , 1F
06/07 15:14, 1F
→
06/07 17:32, , 2F
06/07 17:32, 2F
推
06/07 18:19, , 3F
06/07 18:19, 3F
→
06/07 22:07, , 4F
06/07 22:07, 4F
→
06/07 22:08, , 5F
06/07 22:08, 5F