We use jQuery a lot here at LavaBlast, but we also use ASP.NET webforms. We needed a simple reusable way to cause a postback on an asp.net managed Button or LinkButton.
Here is how it would be used for <asp:Button ID=”btShow” runat=”server” OnClick=”DoSomething” />
// Cause btShow to postback to the server
$('[id$="btShow"]').postback();
If you are not too familiar with jQuery, the selector [id$=”btShow”] search for any control with an id which ends with “btShow”.
Since ASP.NET 4.0, you could also use the new ClientIDMode=”Static” property on the server control to be able to have a static ID on the client and use a jQuery selector like this: $(‘#btShow’), but this is the matter of another discussion completely.
The postback() method is a jQuery plugin which I include here:
(function ($)
{
$.fn.extend({
postback: function ()
{
return this.each(function ()
{
if (this && "undefined" != typeof this.click)
this.click();
else if (this && this.tagName.toLowerCase() == "a" && this.href.indexOf('javascript:') == 0)
eval(this.href.toString().replace('javascript:', ''));
});
}
});
})(jQuery);
Feel free to use this and let us know if you find any problems with the code.
1c209650-cae6-4a56-a9ec-6c6f05b56265|1|5.0