简体   繁体   中英

Passing additional arguments into the OnClick event handler of a LinkButton using Javascript

I have a ASP.NET Website, where, in a GridView item template, automatically populated by a LinqDataSource, there is a LinkButton defined as follows:

<asp:LinkButton ID="RemoveLinkButton" runat="server" CommandName="Remove"
                CommandArgument='<%# DataBinder.GetPropertyValue(GetDataItem(), "Id")%>'                                 
                OnCommand="removeVeto_OnClick"
                OnClientClick='return confirm("Are you sure?");'
                Text="Remove Entry" />

This works fine. Whenever the Button is Clicked, a confirmation dialog is displayed.

What I am trying to do now, is to allow the user to enter a reason for the removal, and pass this on the the OnClick event handler. How would I do this? I tried OnClientClick='return prompt("Enter your reason!");' , but, of course, that did not work =)

Personally, I would stash the reason into a hidden field.

It would work something along these lines: your OnClientClick method would take the return value of a JS method, which does the prompt, and then places the result of the prompt into the hidden field.

You can also look into calling __doPostBack from your client-side code instead of using the OnClick postback. Then you can capture the reason and pass it server-side.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM