This is a migrated thread and some comments may be shown as answers.

RadWindow Confirm Not Posting Back

6 Answers 140 Views
Window
This is a migrated thread and some comments may be shown as answers.
Brad
Top achievements
Rank 1
Brad asked on 27 Oct 2010, 06:05 PM
I'm implementing the RadWindow as a confirm dialog as show in the demo. However, my form never posts back.

I've narrowed the issue down to this:


In the demo, the input renders as follows:
<input type="submit" style="" class="PostbackButton" id="PostbackButton1" onclick="return blockConfirm('Are you sure you want to postback?', event, 330, 100,'','Custom title');" value="Confirm postback with radconfirm" name="PostbackButton1">

On my page, the input renders as follows:
<input type="button" id="ctl00_bodyContentPlaceHolder_uxTimeCard_uxContainer_uxSaveTimesheet" onclick="return blockConfirm(this, event,'Saving timesheet...','Rows without time will be removed. Do you want to continue?', 350, 150);WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$bodyContentPlaceHolder$uxTimeCard$uxContainer$uxSaveTimesheet", "", true, "", "", false, true))" value="save timesheet" name="ctl00$bodyContentPlaceHolder$uxTimeCard$uxContainer$uxSaveTimesheet" class="rfdDecorated" tabindex="-1">
Notice the additional WebForm_DoPostBackWithOptions in my onclick event as opposed to the demo. So when the line callerObj["onclick"] = ""; fires, the event is totally removed.

Please advise.

6 Answers, 1 is accepted

Sort by
0
Georgi Tunev
Telerik team
answered on 28 Oct 2010, 08:25 AM
Hello Brad,

Could you please post your original code?


Best wishes,
Georgi Tunev
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Brad
Top achievements
Rank 1
answered on 28 Oct 2010, 04:32 PM
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="TimeCard.ascx.cs" Inherits="Time_Controls_TimeCard" %>
<%@ Register TagPrefix="blueSky" TagName="ProjectList" Src="~/Time/Controls/MiniControls/ProjectList.ascx" %>
<%@ Register TagPrefix="blueSky" TagName="ServiceList" Src="~/Time/Controls/MiniControls/ServiceList.ascx" %>
<style type="text/css">
</style>
<telerik:RadAjaxManagerProxy ID="uxLoadingManagerProxy" runat="server" />
<telerik:RadScriptBlock ID="uxScriptBlock" runat="server">
    <script type="text/javascript">
        /* WEEKENDING
         */
        function getDateFromID(ID) {
            var name = ID.split("_");
            var date = [parseInt(name[name.length - 3]), parseInt(name[name.length - 2]), parseInt(name[name.length - 1])];
            return date;
        }
        function selectLastDayOfWeek(sender, eventArgs) {
            eventArgs.set_cancel(true);
            var day = eventArgs.get_renderDay();
            var row = day.DomElement.parentNode;
            var selected = day.get_isSelected();
            var calendar = sender;
            calendar.unselectDates(calendar.get_selectedDates());
            if (!selected) {
                var rowCells = row.getElementsByTagName("td"); //get all the cells of the row
                calendar.selectDate(getDateFromID(rowCells[rowCells.length - 1].DayId));
            }
        }
    </script>
    <script type="text/javascript">
    function setActiveRow(index){
            var grid = $find("<%= uxGrid.ClientID %>");
            grid.set_activeRow(grid.MasterTableView.get_dataItems()[index].get_element());
        }
        /* HOURS */
        var indexExpression = "[0-9]{1}$";
        var summaries = new Array(null, null, null, null, null, null, null);
        var tempValue = new Array(<%= HourSummary[0] %>, <%= HourSummary[1] %>, <%= HourSummary[2] %>
        , <%= HourSummary[3] %>, <%= HourSummary[4] %>, <%= HourSummary[5] %>, <%= HourSummary[6] %>);
 
        function registerSummary(sender, args) {
            summaries[sender.get_id().match(indexExpression) - 1] = sender;
        }
        function blur(sender, args) {
            summaries[sender.get_id().match(indexExpression) - 1].set_value(tempValue[sender.get_id().match(indexExpression) - 1] + sender.get_value());
        }
        function focus(sender, args) {
            tempValue[sender.get_id().match(indexExpression) - 1] = summaries[sender.get_id().match(indexExpression) - 1].get_value() - sender.get_value();
        }
    </script>
    <script type="text/javascript">
        //the following code use radconfirm to mimic the blocking of the execution thread.
        //The approach has the following limitations:
        //1. It works only for elements that have *click* method, e.g. links and buttons
        //2. It cannot be used in if(!confirm) checks
        window.blockConfirm = function (callerObj, mozEvent, title, text, oWidth, oHeight) {
            var ev = mozEvent ? mozEvent : window.event; //Moz support requires passing the event argument manually
            //Cancel the event
            ev.cancelBubble = true;
            ev.returnValue = false;
            if (ev.stopPropagation) ev.stopPropagation();
            if (ev.preventDefault) ev.preventDefault();
 
            //Determine who is the caller
            var callerObj = ev.srcElement ? ev.srcElement : ev.target;
 
            //Call the original radconfirm and pass it all necessary parameters
            if (callerObj) {
                //Show the confirm, then when it is closing, if returned value was true, automatically call the caller's click method again.
                var callBackFn = function (arg) {
                    if (arg) { // 'OK' was clicked; fire server-side click event
                        console.log(callerObj["onclick"]);
                        callerObj["onclick"] = ""; // remove the client click event ??
                        console.log(callerObj["onclick"]);
                        if (callerObj.click) { callerObj.click(); } //Works for all buttons in IE, but does not work for link buttons in Moz
                        else if (callerObj.tagName == "A") { //We assume it is a link button!
                            try { eval(callerObj.href) }
                            catch (e) { }
                        }
                    }
                }
                radconfirm(text, callBackFn, oWidth, oHeight, callerObj, title);
            }
            return false;
        }
    </script>
</telerik:RadScriptBlock>
<telerik:RadAjaxPanel ID="uxContent" runat="server">
    <container:LinedGreyTop ID="uxContainer" runat="server">
        <TitleTemplate>
            <table cellpadding="0" cellspacing="0" width="100%">
                <tr>
                    <td align="left" valign="middle">
                        <asp:Image ID="uxWeekStatusImage" runat="server" SkinID="Lock" AlternateText="The week is locked. You cannot enter or modify time in this week." /><telerik:RadToolTip
                            ID="uxWeekStatusImageToolTip" runat="server" SkinID="Default" TargetControlID="uxWeekStatusImage"
                            Position="MiddleRight" />
                    </td>
                    <td align="left" valign="middle">
                        <asp:Label ID="uxWeekEndingLabel" runat="server" Text="week ending " style="vertical-align:middle;" />
                        <telerik:RadDatePicker ID="uxWeekEndingDate" runat="server" AutoPostBack="true" Skin="Sitefinity"
                            EnableTheming="false" Width="225px" DateInput-CssClass="weekEndingDate" DateInput-HoveredStyle-CssClass="weekEndingDateHovered"
                            OnSelectedDateChanged="uxWeekEndingDate_SelectedDateChanged">
                            <Calendar runat="server" ShowColumnHeaders="false" ShowRowHeaders="false">
                                <ClientEvents OnDateClick="selectLastDayOfWeek" />
                            </Calendar>
                        </telerik:RadDatePicker>
                        <telerik:RadToolTip ID="uxWeekEndingDateToolTip" runat="server" ToolTip="click to select a different week"
                            SkinID="Default" TargetControlID="uxWeekEndingDate" Position="MiddleRight" />
                    </td>
                    <td align="center" valign="middle">
                        <asp:Label ID="uxStatusMessage" runat="server" CssClass="h8" />
                    </td>
                    <td align="right" valign="middle">
                        <telerik:RadToolTip ID="uxQuickEntryPopoutToolTip" runat="server" SkinID="Default"
                            TargetControlID="uxQuickEntryPopout" Position="TopRight" />
                        <asp:Button ID="uxSaveTimesheet" runat="server" Text="save timesheet" OnClientClick="return blockConfirm(this, event,'Saving timesheet...','<p>Rows without time will be removed.</p><p><b>Do you want to continue?<b></p>', 350, 150);"
                            OnClick="uxSave_Click" />
                        <span style="color: #B4B4B4;">|</span>
                        <asp:Button ID="uxSubmitTimesheet" runat="server" Text="submit timesheet" OnClientClick="return blockConfirm(this, event,'Submitting timesheet...','Submitting your timesheet cannot be undone; do you want to continue?', 330, 100);"
                            OnClick="uxSubmitTimesheet_Click" />
                        <span style="color: #B4B4B4;">|</span>
                        <milrose:PopupWindow ID="uxQuickEntryPopout" runat="server" ButtonCssClass="launchMiniEntry"
                            ButtonCssClassHover="launchMiniEntryHover" ToolTip="launch quick entry" />
                    </td>
                </tr>
            </table>
        </TitleTemplate>
        <ContentTemplate>
            <telerik:RadGrid ID="uxGrid" runat="server" AutoGenerateColumns="false" AllowPaging="false"
                AllowSorting="false" CssClass="timeCard" Skin="Windows7" ShowStatusBar="false"
                OnNeedDataSource="uxGrid_NeedDataSource" OnItemDataBound="uxGrid_ItemDataBound"
                OnDeleteCommand="uxGrid_DeleteCommand">
                <ClientSettings>
                    <Selecting AllowRowSelect="false" />
                </ClientSettings>
                <MasterTableView TableLayout="Fixed" DataKeyNames="WeekEnding,CompanyId,ContactId,ProjectId,ProjectPhaseId,ServiceId,IsBillable,Comments"
                    HeaderStyle-CssClass="timeEntryHeader" ItemStyle-CssClass="timeEntryRow" AlternatingItemStyle-CssClass="timeEntryAlternateRow"
                    FooterStyle-CssClass="timeEntryFooter" ShowFooter="true" ShowHeader="true">
                    <Columns>
                        <%-- COPY PREVIOUS ENTRY --%>
                        <telerik:GridTemplateColumn HeaderStyle-Width="25px" HeaderStyle-HorizontalAlign="Center"
                            ItemStyle-HorizontalAlign="Center">
                            <ItemTemplate>
                                <asp:ImageButton ID="uxDuplicateCurrent" runat="server" SkinID="Copy" AlternateText="add duplicate row"
                                    CausesValidation="false" CommandArgument='<%# Container.ItemIndex %>' ToolTip="copy previous entry"
                                    Visible='<%# !(bool)DataBinder.Eval(Container.DataItem, "IsClosed") %>' OnClick="uxDuplicateCurrent_Click" />
                                <telerik:RadToolTip ID="uxDuplicateCurrentToolTip" runat="server" SkinID="Default"
                                    TargetControlID="uxDuplicateCurrent" Position="TopRight" />
                            </ItemTemplate>
                            <FooterTemplate>
                                <asp:ImageButton ID="uxNewRecord" runat="server" SkinID="Add" CausesValidation="false"
                                    ToolTip="add new row" OnClick="uxNewRecord_Click" />
                            </FooterTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- PROJECT ID --%>
                        <telerik:GridTemplateColumn HeaderText="Project" HeaderStyle-Font-Bold="true" HeaderStyle-Width="90px"
                            HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center">
                            <ItemTemplate>
                                <blueSky:ProjectList ID="uxProjectList" runat="server" EmptyMessage="Project:" ErrorCssClass="errorInput"
                                    FilterByUserId="aconfer@milrose.com" SelectionRequired="true" ShowHeader="false"
                                    Enabled='<%# !(bool)DataBinder.Eval(Container.DataItem, "IsClosed") %>' SelectedProjectAndPhase='<%# DataBinder.Eval(Container.DataItem, "MRC") %>' />
                            </ItemTemplate>
                            <FooterTemplate>
                                <asp:LinkButton ID="uxNewRecordText" runat="server" CausesValidation="false" Text="add new record"
                                    OnClick="uxNewRecord_Click" />
                            </FooterTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- SERVICE --%>
                        <telerik:GridTemplateColumn HeaderText="Service" HeaderStyle-Font-Bold="true" HeaderStyle-Width="110px"
                            HeaderStyle-HorizontalAlign="Center" ItemStyle-Width="125px" ItemStyle-HorizontalAlign="Center">
                            <ItemTemplate>
                                <blueSky:ServiceList ID="uxServiceList" runat="server" EmptyMessage="Service:" ErrorCssClass="errorInput"
                                    SelectionRequired="true" Text='<%# DataBinder.Eval(Container.DataItem, "ServiceFriendlyName") %>'
                                    ShowHeader="false" Enabled='<%# !(bool)DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                    SelectedValue='<%# DataBinder.Eval(Container.DataItem, "ServiceId") %>' />
                            </ItemTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- IS BILLABLE --%>
                        <telerik:GridTemplateColumn HeaderStyle-Width="25px" HeaderStyle-HorizontalAlign="Center"
                            ItemStyle-HorizontalAlign="Center">
                            <HeaderTemplate>
                                <asp:ImageButton ID="uxIsBillableImage" runat="server" SkinID="Money" OnClientClick="toggleIsBillable();"
                                    ToolTip="is the item billable?" /></HeaderTemplate>
                            <ItemTemplate>
                                <asp:CheckBox ID="uxIsBillable" runat="server" TextAlign="Left" Checked='<%# DataBinder.Eval(Container.DataItem, "IsBillable") %>'
                                    Enabled='<%# !(bool)DataBinder.Eval(Container.DataItem, "IsClosed") %>' ToolTip="is the item billable?" />
                            </ItemTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- COMMENTS --%>
                        <telerik:GridTemplateColumn HeaderText="Comments" HeaderStyle-Font-Bold="true" HeaderStyle-HorizontalAlign="Center"
                            ItemStyle-HorizontalAlign="Center">
                            <ItemTemplate>
                                <telerik:RadTextBox ID="uxComments" runat="server" MaxLength="250" Width="95%" Text='<%# DataBinder.Eval(Container.DataItem, "Comments") %>'
                                    ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>' />
                            </ItemTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- DAYS --%>
                        <telerik:GridTemplateColumn HeaderStyle-Width="450px">
                            <HeaderTemplate>
                                <table cellpadding="0" cellspacing="0" width="100%" class="timeEntry">
                                    <tr>
                                        <td align="center" valign="middle" class="<%# IsToday1 %> <%# Day1Type %> <%# Day1("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay1" runat="server" Text='<%# Day1(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday2 %> <%# Day2Type %> <%# Day2("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay2" runat="server" Text='<%# Day2(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday3 %> <%# Day3Type %> <%# Day3("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay3" runat="server" Text='<%# Day3(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday4 %> <%# Day4Type %> <%# Day4("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay4" runat="server" Text='<%# Day4(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday5 %> <%# Day5Type %> <%# Day5("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay5" runat="server" Text='<%# Day5(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday6 %> <%# Day6Type %> <%# Day6("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay6" runat="server" Text='<%# Day6(DayHeaderNameFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday7 %> <%# Day7Type %> <%# Day7("ddd") %> dayHeaderName">
                                            <asp:Label ID="uxDay7" runat="server" Text='<%# Day7(DayHeaderNameFormatString) %>' />
                                        </td>
                                    </tr>
                                    <tr>
                                        <td align="center" valign="middle" class="<%# IsToday1 %> <%# Day1Type %> <%# Day1("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate1" runat="server" Text='<%# Day1(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday2 %> <%# Day2Type %> <%# Day2("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate2" runat="server" Text='<%# Day2(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday3 %> <%# Day3Type %> <%# Day3("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate3" runat="server" Text='<%# Day3(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday4 %> <%# Day4Type %> <%# Day4("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate4" runat="server" Text='<%# Day4(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday5 %> <%# Day5Type %> <%# Day5("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate5" runat="server" Text='<%# Day5(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday6 %> <%# Day6Type %> <%# Day6("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate6" runat="server" Text='<%# Day6(DayHeaderDateFormatString) %>' />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday7 %> <%# Day7Type %> <%# Day7("ddd") %> dayHeaderDate">
                                            <asp:Label ID="uxDate7" runat="server" Text='<%# Day7(DayHeaderDateFormatString) %>' />
                                        </td>
                                    </tr>
                                </table>
                            </HeaderTemplate>
                            <ItemTemplate>
                                <table cellpadding="0" cellspacing="0" width="100%" class="timeEntry">
                                    <tr>
                                        <td align="center" valign="middle" class="<%# IsToday1 %> <%# Day1Type %> <%# Day1("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours1" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" InvalidStyle-HorizontalAlign="Left" MaxValue="16"
                                                MinValue="0" NumberFormat-DecimalDigits="2" NumberFormat-KeepTrailingZerosOnFocus="true"
                                                ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>' ReadOnlyStyle-CssClass="timeEntryReadOnly"
                                                Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours1") %>' ClientEvents-OnBlur="blur"
                                                ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday2 %> <%# Day2Type %> <%# Day2("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours2" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" InvalidStyle-HorizontalAlign="Left" MaxValue="16"
                                                MinValue="0" NumberFormat-DecimalDigits="2" NumberFormat-KeepTrailingZerosOnFocus="true"
                                                ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>' ReadOnlyStyle-CssClass="timeEntryReadOnly"
                                                Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours2") %>' ClientEvents-OnBlur="blur"
                                                ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday3 %> <%# Day3Type %> <%# Day3("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours3" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" MaxValue="16" MinValue="0" NumberFormat-DecimalDigits="2"
                                                NumberFormat-KeepTrailingZerosOnFocus="true" ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                                ReadOnlyStyle-CssClass="timeEntryReadOnly" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours3") %>'
                                                ClientEvents-OnBlur="blur" ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday4 %> <%# Day4Type %> <%# Day4("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours4" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" MaxValue="16" MinValue="0" NumberFormat-DecimalDigits="2"
                                                NumberFormat-KeepTrailingZerosOnFocus="true" ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                                ReadOnlyStyle-CssClass="timeEntryReadOnly" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours4") %>'
                                                ClientEvents-OnBlur="blur" ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday5 %> <%# Day5Type %> <%# Day5("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours5" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" MaxValue="16" MinValue="0" NumberFormat-DecimalDigits="2"
                                                NumberFormat-KeepTrailingZerosOnFocus="true" ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                                ReadOnlyStyle-CssClass="timeEntryReadOnly" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours5") %>'
                                                ClientEvents-OnBlur="blur" ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday6 %> <%# Day6Type %> <%# Day6("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours6" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" MaxValue="16" MinValue="0" NumberFormat-DecimalDigits="2"
                                                NumberFormat-KeepTrailingZerosOnFocus="true" ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                                ReadOnlyStyle-CssClass="timeEntryReadOnly" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours6") %>'
                                                ClientEvents-OnBlur="blur" ClientEvents-OnFocus="focus" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday7 %> <%# Day7Type %> <%# Day7("ddd") %> hours">
                                            <telerik:RadNumericTextBox ID="uxHours7" runat="server" AllowOutOfRangeAutoCorrect="false"
                                                EmptyMessage="0.00" EmptyMessageStyle-CssClass="timeEntryEmpty" EnabledStyle-HorizontalAlign="Right"
                                                FocusedStyle-CssClass="timeEntryFocus" HoveredStyle-CssClass="timeEntryHover"
                                                IncrementSettings-Step=".25" MaxValue="16" MinValue="0" NumberFormat-DecimalDigits="2"
                                                NumberFormat-KeepTrailingZerosOnFocus="true" ReadOnly='<%# DataBinder.Eval(Container.DataItem, "IsClosed") %>'
                                                ReadOnlyStyle-CssClass="timeEntryReadOnly" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem, "Hours7") %>'
                                                ClientEvents-OnBlur="blur" ClientEvents-OnFocus="focus" />
                                        </td>
                                    </tr>
                                </table>
                            </ItemTemplate>
                            <FooterTemplate>
                                <table cellpadding="0" cellspacing="0" width="100%" class="timeEntry">
                                    <tr>
                                        <td align="center" valign="middle" class="<%# IsToday1 %> <%# Day1Type %> <%# Day1("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary1" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[0] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday2 %> <%# Day2Type %> <%# Day2("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary2" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[1] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday3 %> <%# Day3Type %> <%# Day3("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary3" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[2] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday4 %> <%# Day4Type %> <%# Day4("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary4" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[3] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday5 %> <%# Day5Type %> <%# Day5("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary5" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[4] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday6 %> <%# Day6Type %> <%# Day6("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary6" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[5] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                        <td align="center" valign="middle" class="<%# IsToday7 %> <%# Day7Type %> <%# Day7("ddd") %> summary">
                                            <telerik:RadNumericTextBox ID="uxSummary7" runat="server" EmptyMessage="0.00" EnabledStyle-HorizontalAlign="Right"
                                                ForeColor="#4B4B4B" NumberFormat-DecimalDigits="2" ReadOnly="true" Width="100%"
                                                Value='<%# HourSummary[6] %>' ClientEvents-OnLoad="registerSummary" />
                                        </td>
                                    </tr>
                                </table>
                            </FooterTemplate>
                        </telerik:GridTemplateColumn>
                        <%-- DELETE --%>
                        <telerik:GridButtonColumn ButtonType="ImageButton" HeaderStyle-Width="25px" HeaderStyle-HorizontalAlign="Center"
                            ItemStyle-HorizontalAlign="Center" ConfirmText="Delete this entry?" ConfirmDialogType="RadWindow"
                            ConfirmTitle="Delete" CommandName="Delete" Text="Delete" UniqueName="DeleteColumn" />
                    </Columns>
                </MasterTableView>
            </telerik:RadGrid>
        </ContentTemplate>
    </container:LinedGreyTop>
</telerik:RadAjaxPanel>

0
Cori
Top achievements
Rank 2
answered on 29 Oct 2010, 01:39 PM
Hello Brad,

Have you tried testing your project without the use of ajax. The DoPostBackWithOptions is added by the RadAjaxPanel. For it to work with ajax you'll need to modify your blockConfirm method, so it's called from the OnRequestStart client-side method of RadAjaxPanel and then cancel or proceed with the ajax call from there. To make sure the blockConfirm method is only called on the button click, you'll need to check the get_eventTarget property and make sure it matches the button's id property. Inside that the OnRequestStart, for the blockConfirm, you could probably use a similar approach like in this forum post:

http://www.telerik.com/community/forums/aspnet-ajax/menu/blockconfirm-on-radmenuitemclicking-event.aspx

Where you can pass eventArgs.get_domEvent() to your blockConfirm method.

I hope that helps.
0
Accepted
Fiko
Telerik team
answered on 02 Nov 2010, 03:30 PM
Hi Guys,

I recommend you this very simple approach in order to simulate blocking the execution thread:
  1. Implement the handler in this way:
    function OnClientClickHandler(clickedButton)
    // Button is clicked
        function callbackFunction(arg)
        {
            if (arg)
            {
                // Continue postback
                __doPostBack(clickedButton.name, ""); // Actual postback
            }
        }
        radconfirm("Are you sure", callbackFunction, 300, 100, null, "Delete an item");
    }
  2. Attach the handler as shown bellow:
    <asp:Button ID="Button1" runat="server" Text="Delete" OnClientClick="OnClientClickHandler(this); return false;"
        OnClick="Button1_Click" />

For your convenience I have attached a demo project to the thread.

Regards,
Fiko
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Brad
Top achievements
Rank 1
answered on 02 Nov 2010, 06:07 PM
If this works then how come everywhere you look there are outrageously complex scripts with users whining about there being no one-liner implementations of this and Telerik complaining back that the outrageously complex methods are the only way around the problem of browser-thread-blocking?
0
Georgi Tunev
Telerik team
answered on 03 Nov 2010, 01:08 PM
Hello Brad,

In short - because the different approaches depend on the exact scenario that the customer is having.


Sincerely yours,
Georgi Tunev
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Tags
Window
Asked by
Brad
Top achievements
Rank 1
Answers by
Georgi Tunev
Telerik team
Brad
Top achievements
Rank 1
Cori
Top achievements
Rank 2
Fiko
Telerik team
Share this question
or