主要是學習.net做的
前臺
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="car.aspx.vb" Inherits="car_car" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>無標題頁</title>
</head>
<style>
body{font-size:12px}
.clearb{clear:both}
.car_info{width:100%;height:200px;border:0px #ccc solid}
.car_item{width:210px;height:170px;border:1px #ccc dashed;float:left;margin-right:10px;background:#FFFFFF}
.car_total{width:100%;height:24px;line-height:24px;font-size:14px;margin-top:4px;}
.car_title{width:100%;height:22px;line-height:22px;}
.car_people{width:100%;margin-top:5px;padding-left:5px;}
.car_people_item{width:60px;height:25px;border:1px #ccc dashed;float:left;margin-right:4px;line-height:25px;text-align:center;margin-bottom:5px;overflow:hidden;background:#EFF8FC}
.people_info{width:98%;height:200px;border:1px #ccc solid;padding-top:5px;padding-left:5px;background:#EFF8FC}
.people_item{width:80px;height:25px;border:1px #ccc dashed;float:left;margin-right:10px;line-height:25px;background:#FFFFFF}
</style>
<script language="javascript">
var icount=<%#b%>
function clearall()
{
var i
for(i=1;i<=icount;i++)
{
document.getElementById("car_people_"+i).innerHTML=""
}
}
function addcar1() //上車
{
if(document.all("peopleid").length==null)
{
if(document.getElementById("peopleid").checked==true)
{
return true
}
else
{
alert("請選擇人員後點擊該按鈕!")
return false
}
}
else
{
for(var i=0;i<document.all("peopleid").length;i++)
{
if(document.all("peopleid")[i].checked==true)
{
return true
}
}
alert("請選擇人員後點擊該按鈕!")
return false
}
}
function clickme(a)
{
document.getElementById("HiddenField1").value=a
}
</script>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate >
<div id="car_info" class="car_info">
</HeaderTemplate>
<ItemTemplate >
<div id="car_<%#eval("id")%>" class="car_item">
<div class="car_title"> <%#eval("car_name")%> 可載<%#eval("car_count")%>人 <%#IIf(Eval("car_zt") = 0, "可用", "<font color=red>不可用</font>")%></span> [<asp:LinkButton runat ="server" CommandName ="clearcar" ID="ac" OnCommand="clearcar">下車</asp:LinkButton>]</div>
<div class="car_people" id="car_people_<%#eval("id")%>">
<asp:Repeater id="repeater_z" runat ="server">
<ItemTemplate>
<div id="car_people_item" class="car_people_item"><asp:linkbutton id="link1" runat="server" OnCommand="clearone" CommandName ='<%#eval("id") %>' Text="X" /></asp:linkbutton> <%#eval("people_name")%></div>
</ItemTemplate>
</asp:Repeater>
</div>
</div>
</ItemTemplate>
<FooterTemplate ></div></FooterTemplate>
</asp:Repeater>
<asp:Repeater ID="Repeater2" runat="server">
<HeaderTemplate >
<br>
<!-- 人員信息 begin -->
<div id="people_info" class="people_info">
</HeaderTemplate>
<FooterTemplate >
</div>
<!-- 人員信息 end-->
</FooterTemplate>
<ItemTemplate>
<div class="people_item"> <input type="radio" value='<%#eval("id")%>' name="peopleid" id="peopleid" onclick="clickme(this.value)" /><%#Eval("people_name")%></div>
</ItemTemplate>
</asp:Repeater>
<asp:Button ID="Button1" runat="server" Text="ClearAll"
/>
</div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:carconnstr %>"
ProviderName="<%$ ConnectionStrings:carconnstr.ProviderName %>"
SelectCommand="SELECT * FROM [car]"></asp:SqlDataSource>
<asp:Repeater ID="Repeater3" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate >
<asp:Button runat="server" ID="ba" text='<%#eval("car_name")%>' CommandName='<%#eval("id") %>' oncommand="addcar" />
</ItemTemplate>
</asp:Repeater>
<asp:HiddenField ID="HiddenField1" runat="server" />
</form>
</body>
</html>
後臺
Imports System.Data
Imports System.Data.OleDb
Partial Class car_car
Inherits System.Web.UI.Page
Public b As Integer
Dim cn As New OleDbConnection(ConfigurationManager.ConnectionStrings("carconnstr").ToString)
Dim cn2 As New OleDbConnection(ConfigurationManager.ConnectionStrings("carconnstr").ToString)
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim t As Integer = 0
Dim cm As New OleDbCommand("update people set car_id=0", cn)
cn.Open()
t = cm.ExecuteNonQuery()
cm.Dispose()
cm = Nothing
cn.Close()
bind()
End Sub
Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater1.ItemDataBound
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
Dim i As Integer = 0
i = DataBinder.Eval(e.Item.DataItem, "id")
'Response.Write(i)
Dim cm As New OleDbCommand("select * from people where car_id=" & i, cn2)
cn2.Open()
Dim dr As OleDbDataReader
dr = cm.ExecuteReader
Dim t As Repeater
t = e.Item.FindControl("repeater_z")
t.DataSource = dr
t.DataBind()
cn2.Close()
Dim w As LinkButton
w = e.Item.FindControl("ac")
w.CommandName = i
End If
End Sub
Sub itemcount()
b = 0
Dim cm As New OleDbCommand("select count(*) from car", cn)
cn.Open()
b = cm.ExecuteScalar
cm.Dispose()
cm = Nothing
cn.Close()
End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
' itemcount()
' Page.DataBind()
' Button1.Attributes.Add("onclick", "clearall();")
bind()
End If
End Sub
Sub clearcar(ByVal sender As Object, ByVal e As System.EventArgs)
Dim t As LinkButton
t = sender
Dim i As Integer = 0
i = CInt(t.CommandName)
Dim cm As New OleDbCommand("update people set car_id=0 where car_id=" & i, cn)
cn.Open()
cm.ExecuteNonQuery()
' Repeater2.DataBind()
' Repeater1.DataBind()
bind()
End Sub
Sub clearone(ByVal sender As Object, ByVal e As System.EventArgs)
Dim t As LinkButton
t = sender
Dim i As Integer = 0
i = CInt(t.CommandName)
'Response.Write(i)
Dim cm As New OleDbCommand("update people set car_id=0 where id=" & i, cn)
cn.Open()
cm.ExecuteNonQuery()
' Repeater2.DataBind()
' Repeater1.DataBind()
bind()
End Sub
Sub addcar(ByVal sender As Object, ByVal e As System.EventArgs)
Dim t As Button
t = sender
'Response.Write(t.CommandName)
'Response.Write(HiddenField1.Value)
Dim sql As String
sql = "update people set car_id=" & t.CommandName & " where id=" & HiddenField1.Value
Dim cm As New OleDbCommand(sql, cn)
cn.Open()
cm.ExecuteNonQuery()
cn.Close()
bind()
'Dim i2 As Integer = 0
''Response.Write(Repeater2.Items.Count)
'For i2 = 0 To Repeater2.Items.Count - 1
' If Repeater2.Items(i2).ItemType = ListItemType.Item Or Repeater2.Items(i2).ItemType = ListItemType.AlternatingItem Then
' Dim c As HtmlInputRadioButton
' c = Repeater2.Items(i2).FindControl("peopleid")
' If c.Checked = True Then
' ' Dim sql As String
' ' sql = "update people set car_id=" & t.CommandName & " where id=" & c.Value
' ' Dim cm As New OleDbCommand(sql, cn)
' ' cn.Open()
' ' cm.ExecuteNonQuery()
' ' cn.Close()
' ' bind()
' Response.Write(c.Value)
' End If
' End If
'Next
End Sub
Sub bind()
Dim da As New OleDbDataAdapter("select * from car", cn)
Dim da2 As New OleDbDataAdapter("select * from people where car_id=0", cn)
Dim ds As New DataSet
da.Fill(ds, "car")
da2.Fill(ds, "people")
Repeater1.DataSource = ds.Tables("car").DefaultView
Repeater1.DataBind()
Repeater2.DataSource = ds.Tables("people").DefaultView
Repeater2.DataBind()
End Sub
Protected Sub Repeater3_DataBinding(ByVal sender As Object, ByVal e As System.EventArgs) Handles Repeater3.DataBinding
End Sub
Protected Sub Repeater3_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles Repeater3.ItemDataBound
Dim t1 As Button
t1 = e.Item.FindControl("ba")
t1.Attributes.Add("onclick", "return addcar1()")
End Sub
End Class