webForumDet fria alternativet

Anropa onclick-metod på linkbutton vid tryck på enterknappen

.NET

8 svar · 371 visningar · startad av erka

Medlem sedan dec. 19996 522 inlägg
Frågan#1

Hej
Jag har ett sökfält och en linkbutton för att utföra sökningen. Om en användare klickar på enter ska ju knappen tryckas ner eller i alla fall knapptryckningsmetoden anropas, men det verkar inte vara möjligt i asp.net

Jag har löst det med ett javascript som kollar om användaren tryckt på enter då ploppar ett meddelande upp om att han måste använda sökknappen, men detta är ju inte vidare användarvänligt, finns det något annat sätt?

Tacksam

Medlem sedan maj 2003151 inlägg
#2

När du trycker på enter gör så att ditt javascript kalla på detta istället. document.getElementById('NamnPÅForm').submit();

Medlem sedan dec. 19996 522 inlägg
#3

Det fungerar i alla webbläsare utom Internet Explorer verkar det som. Eftersom sökfunktionen ligger i en user controll som inkluderas på alla sidor heter formen alltid Form1. Men det fungerar tydligen inte i IE,tack iaf

Medlem sedan maj 2003151 inlägg
#4

prova så här då.
document.forms.Form1.submit();

Funkar för mig i IE och FF,
(Dock stoppar sp2 editionen scriptet.)

Hela koden

<html>
	<head>
		<title>
			Test
		</title>
	</head>
	<body>
		<form id="Form1" action="mekk.html?=hej" method="post">
			<input type="text" id="hej" /><br />
			<input type="submit" value="Den" /><br />
			<a href="javascript: document.forms.Form1.submit();">Eller Denna</a>
		</form>
	</body>
</html>

EDIT: Det ska vara "javascript" inte ett mellanslag som läggs till här.

Medlem sedan dec. 19996 522 inlägg
#5

Tyvärr måste textfältet vara en webbkontroll, tack i alla fall

Medlem sedan maj 2003151 inlägg
#6

som i en asp:TextBox?

Medlem sedan nov. 2003569 inlägg
#7

Hej.. prova att ta bort alla dina kontroller och sätt ut textboxen först sen button.. jag tror det har att göra med vilken ordning du lägger ut kontrollerna. Och försök undvik i allra möjligaste mån att använda submit javascript kod i ASP.NET eftersom ASP.NET använder en function som heter __doPostBack på alla sidor, som är till för att posta tillbaka kontroller som inte har en inbyggd submit, typ DropDownListor.

Medlem sedan nov. 20022 355 inlägg
#8

det är väl TabIndex du ska latja med!

Medlem sedan sep. 20011 914 inlägg
265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)