webForumDet fria alternativet

Koppla javascript till en asp:linkbutton

29 svar · 884 visningar · startad av wwwstekaren · sida 2 av 2

wwwstekarenMedlem sedan apr. 2003234 inlägg
#21

sorry cancel funkar nu det var bara ett simpelt fel i javascriptet:)

wwwstekarenMedlem sedan apr. 2003234 inlägg
#22

Nu är det bara att få bort texten "Clicked" och köra en Asp:ImageButton men får det inte att funka med funktionerna någon som kan hjälpa mig:)?

GladhMedlem sedan maj 20012 812 inlägg
#23

Tyvärr så verkar det inte som om click eventet på ImageButton i datagriden slår igenom som det skall.

När jag gjorde en vanlig ImageButton som inte låg i en DataGrid så kunde jag ändra bilen, men när den låg i en DataGrid så ändras bilden inte, fast eventet körs.

Så jag vet inget bra sätt just nu.

- M

wwwstekarenMedlem sedan apr. 2003234 inlägg
#24

okey tackar, ska försöka kolla på det, tack för alla din hjälp

wwwstekarenMedlem sedan apr. 2003234 inlägg
#25

Jag vill att det ska ta bort en rad ur min datagrid, har denna kod för att ta bort en rad på en annan funktion så jag hade tänkt mig detta

protected void cmdDelete_onClick(object sender, System.EventArgs e)
		{
			((LinkButton)sender).Text = "Clicked";
			
			//Radera post
			/*
			DataSet dataSet = LoadWebs();
			int row = Convert.ToInt32(e.Item.ItemIndex);
			dataSet.Tables[0].Rows[row].Delete();
			dataSet.WriteXml(Server.MapPath("webs.xml"));
			*/
		}

Alltså koden som är komenterad.
Lägger jag till DataGridCommandEventArgs e i stället för System.EventArgs så funkar det men då får jag istället fel på koden

<asp:LinkButton ID="lbDelete" OnPreRender="cmdDelete_onPreRender" OnClick="cmdDelete_onClick" Text="Delete" runat="server">
PatrikBMedlem sedan mars 20002 836 inlägg
#26

Gladh skrev:

Tyvärr så verkar det inte som om click eventet på ImageButton i datagriden slår igenom som det skall.

När jag gjorde en vanlig ImageButton som inte låg i en DataGrid så kunde jag ändra bilen, men när den låg i en DataGrid så ändras bilden inte, fast eventet körs.

Så jag vet inget bra sätt just nu.

- M

Beror på att default så har man CausesValidation satt till True och har man då textboxar som ska valideras så finns redan eventet onclick (för valideringen). När man sedan försöker att lägga till onclick eventet igen så ser man när sidan har renderats (view source) att taggen har dubbla onclick-event. Hur man kommer förbi det vete fasen. Har försökt flera gånger utan att lyckas :( ... eller, ett sätt är att sätta CausesValidation = False för ImageButton kontrollen ...

cya,
PatrikB

wwwstekarenMedlem sedan apr. 2003234 inlägg
#27

Har löst det på ett litet sätt, texten skrivs inte ut så då behålls bilden, men raderar funktionen buggar väldigt mycket, men jag ska försöka att lösa det. Lösningen kommer

tihiMedlem sedan maj 200235 inlägg
#28

javascript, asp:button, datagrid, VB

Har läst denna tråden för att kanske kunna lösa mitt problem men får det inte att fungera....

Jag har en datagrid med ett antal kolumner och i den sista kolumnen hade jag förut en ButtonColumn men eftersom jag vill ha en bekräftelse-ruta om man vill ta bort ett dokument eller inte. Jag har försökt att göra som i exemplet men får det inte att fungera...

Min kod i aspx:

<asp:TemplateColumn HeaderText="Radera" ItemStyle-HorizontalAlign="Center" ItemStyle-Font-Bold="True" ItemStyle-Font-Size="5">
<ItemTemplate>
<asp:Button ID="btnDelete" OnPreRender="btnDelete_onPreRender" OnClick="btnDelete_onClick" Runat="server" Text="x"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>

och i aspx.vb
Protected WithEvents btnDelete As System.Web.UI.WebControls.Button

Sub btnDelete_onPreRender(ByVal sender As System.Object, ByVal e As System.EventArgs)
    btnDelete.Attributes.Add("OnClick", "javascript:return confirm ('Vill du radera dokumentet?');")
End Sub

Sub btnDelete_onClick(ByVal sender As System.Object, ByVal e As System.EventArgs)
    btnDelete.Text = "click"
End Sub

När jag kör detta får jag upp:
System.NullReferenceException: Object reference not set to an instance of an object.

Fattar inte rikigt hur jag ska göra och inte heller det med PreRender... Kan nån hjälpa mig?

maqeMedlem sedan dec. 2003824 inlägg
#29

Har löst det där med confirm på detta sätt men får ett litet fel, oavslutad strängkonstant får jag som fel ... någon som ser vad det kan vara för fel?

Private Sub myNewsDataList_ItemDataBound(ByVal sender As System.Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles myNewsDatalist.ItemDataBound

Try

Dim deleteButton As LinkButton = CType(e.Item.FindControl("delete"), LinkButton)
deleteButton.Attributes("onclick") = "javascript:return " & _
"confirm('Are you sure you want to delete " & _
DataBinder.Eval(e.Item.DataItem, "newsheader") & "?')"
Catch
End Try

maqeMedlem sedan dec. 2003824 inlägg
#30

Har löst så att det fungerar utan att lägg till min newsheader nu.
Tror att man måste ha .Add efter Attributes och sen hade jag glömt ett ; i slutet på javascriptet men det kanske inte är nödvändigt? Gott nytt på er!

131 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)