Hejsan gott folk! *Rysser* Är inte det ASP.NET galenskap? Varför hantera eventet på servern om det bara skall köra ett javascript på klienten.Onclick utförs ej
Jag har problem med en dynamiskt skapad linkbutton. När jag trycker på knapparna så postas sidan om och knappen struntar i att utföra sin Onclick. Vad är det för fel, och vad ska jag göra?
Så här skapas knappen/knapparna:
<code>
Sub DayChange(ByVal obj As Object, ByVal e As EventArgs) Handles Calendar1.SelectionChanged
' Kikar om något datum i kalendern är markerat och isåfall så renderas länkar ut som man kan klicka på för att se hela notisen
Dim dbConn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0;Data source=blaha.mdh")
Dim dbCmd As New OleDb.OleDbDataAdapter("SELECT * FROM handelser", dbConn)
Dim ds As New DataSet()
Dim dr As DataRow
Dim dt As New DataTable()
dbCmd.Fill(ds, "events")
dt = ds.Tables("events")
For Each dr In dt.Rows
If dr("datum") = Calendar1.SelectedDate Then
Dim r As New TableRow()
Dim c As New TableCell()
Dim border As New BorderStyle()
Dim size As New Unit()
Dim color As New Color()
Dim hyp As New LinkButton()
AddHandler hyp.Click, AddressOf gaTillSida
hyp.Text = dr("Rubrik")
c.BorderStyle = BorderStyle.Solid
c.BorderWidth = Unit.Pixel(1)
c.BorderColor = color.YellowGreen
c.Controls.Add(hyp)
r.Cells.Add(c)
tblAnm.Rows.Add(r)
End If
Next
dbConn.Close()
End Sub
</code>
Och så här ser click händelsen ut:
<code>
Sub gaTillSida(ByVal obj As Object, ByVal e As EventArgs)
Response.Write("<Script Language=JavaScript>window.open('notis.aspx?id=" & obj.commandname & "','Title','[b]toolbar=yes[/b],scrollbars=yes,width=200,height=200 maximazed=no, resizable=yes')</script>")
End Sub</code>Sv: Onclick utförs ej
Jag skulle undvika postbacks i största möjliga mån.
ASP.NET skall använas rätt. För at använda ASP.NET bör utvecklaren ha god förståelse för standarderna och tekniker som ligger bakom: HTML, CSS, HTTP, etc.