Quantcast
Channel: ASP.NET AJAX + Ajax Control Toolkit (ACT)
Viewing all articles
Browse latest Browse all 5678

AsyncFileUpload inside update panel

$
0
0

Hello,

  In my web app, i have a asyncfileupload inside a update panel inside modal popup and i have to open this popup in the grid view.

The probelm is, i am able to upload the file. But when i try to download the uploaded file(i am displaying the uploaded file in another grid column) and change some content and save that on my disk and try to upload the modified file, i am seeing a file dialog which gives the option to open /save /close the previously opened file. Hope iam making sense. 

I am doing most of this in client side(except saving the file in database)

Please have a look at the code and let me know if you have any questions. 

<div id="divAttachFinal" runat="server" style="display: none" class="pnlPop"><asp:Button ID="UP_Btn" runat="server" Text="Updatepanel_Trigger" style="display:none" /><asp:UpdatePanel runat="server" ID="updPnlAttach2" UpdateMode="Always"><ContentTemplate><table style="width: 100%;" align="center"><tr><td><h2>
                            Attach Document</h2></td></tr><tr><td><asp:HiddenField ID="hdnVendorContractDocumentPKFinal" runat="server"></asp:HiddenField></td></tr><tr><td><asp:HiddenField ID="hdnVendorDocUploadedFileName" runat="server"></asp:HiddenField></td></tr><tr><td align="right"><font class="redfont">*</font> Document Template</td><td><%--  <input id="File1" type="file" style="width: 500px;" />--%><cc1:AsyncFileUpload runat="server" ID="afuFinalDocument" Width="300px" ClientIDMode="AutoID"
                            CompleteBackColor="LightGreen" UploadingBackColor="#CCFFFF" UploaderStyle="Traditional" OnClientUploadComplete="VendorDocuploadComplete" /></td><td></td></tr><tr><td align="right"><font class="redfont">*</font> Document Category</td><td><asp:DropDownList ID="ddlFinalDocumentCategory" runat="server" onchange="EnableDisablePublishOnWebVendorDocsTab(this);"></asp:DropDownList><asp:RequiredFieldValidator ID="rfvFinalDocumentCategory" runat="server" ControlToValidate="ddlFinalDocumentCategory"
                            CssClass="failureNotification" InitialValue="0" ValidationGroup="FinalVendorDoc"></asp:RequiredFieldValidator></td><td></td></tr><tr><td align="right"><font class="redfont">*</font> Seq #</td><td><asp:TextBox ID="txtFinalSeqNum" runat="server" Width="50px"></asp:TextBox><asp:RequiredFieldValidator ID="rfvFinalSeqNum" runat="server" ControlToValidate="txtFinalSeqNum"
                            CssClass="failureNotification" ValidationGroup="FinalVendorDoc"></asp:RequiredFieldValidator><asp:RegularExpressionValidator ID="revFinalSeqNum" runat="server" ControlToValidate="txtFinalSeqNum"
                            CssClass="failureNotification" ValidationExpression="^[0-9]*(\.[0-9]{1,2})?$" ValidationGroup="FinalVendorDoc"></asp:RegularExpressionValidator></td><td></td></tr><tr><td align="right"></td><td><asp:CheckBox ID="chkFinalPublishOnWeb" runat="server" Text="Publish On the Web" /></td></tr><tr><td><br /><br /></td></tr></table></ContentTemplate><Triggers><asp:AsyncPostBackTrigger ControlID ="afuFinalDocument" EventName="UploadedComplete" /><%--  <asp:PostBackTrigger ControlID ="cmdVendorFinalDocAttach" />--%></Triggers></asp:UpdatePanel><table style="width: 100%;" align="center"><tr><td align="center"><asp:Button ID="cmdVendorFinalDocAttach" runat="server" Text="Attach" ValidationGroup="FinalVendorDoc"
                    OnClientClick="return VendorDocvalidateFileUpload()" /><asp:Button ID="cmdVendorFinalDocCancel" runat="server" Text="Cancel" /></td></tr></table></div>
<asp:TemplateField ItemStyle-HorizontalAlign="left" HeaderText="Final Document" FooterStyle-HorizontalAlign="right"><ItemTemplate><asp:LinkButton runat="server" ID="lbFinalDocument" CommandName="ViewVendorDocFinal"
                                Text='<%# Eval("FinalDocumentName") %>' CommandArgument='<%# DataBinder.Eval(Container, "RowIndex") %>' /></ItemTemplate><FooterTemplate><asp:Button ID="cmdNewFinal" runat="server" Text="Attach" OnClientClick="return ClearVendorDocsFinalDocFields()" /><cc1:ModalPopupExtender ID="mdlFinalAttachFooter" runat="server" TargetControlID="cmdNewFinal"
                                PopupControlID="divAttachFinal" CancelControlID="cmdVendorFinalDocCancel" BackgroundCssClass="modalBackground"></cc1:ModalPopupExtender></FooterTemplate></asp:TemplateField><asp:TemplateField ItemStyle-HorizontalAlign="center"><ItemTemplate><asp:ImageButton ID="imbUploadFinal" AlternateText="Upload2" runat="server" OnClientClick="return getFinalDocumentDetails(this)"
                                ImageUrl="~/Images/Upload24.png" ToolTip="Upload this document." Width="25px" CommandName="UploadFinal"
                                Height="25px" /></ItemTemplate></asp:TemplateField>
    //function to get the file name of the file being uploaded
    function VendorDocuploadComplete(sender, args) {  
        var hdnVendorDocUploadedFileName = document.getElementById('<%=hdnVendorDocUploadedFileName.ClientID %>')
        hdnVendorDocUploadedFileName.value = args.get_fileName();

    }

    //validating the file upload based on the name of the file in the hidden field.
    function VendorDocvalidateFileUpload() {
        var hdnVendorDocUploadedFileName = document.getElementById('<%=hdnVendorDocUploadedFileName.ClientID %>')
        var sFilename = hdnVendorDocUploadedFileName.value;
        if (typeof (Page_ClientValidate) == 'function') {
            var isPageValid = Page_ClientValidate('FinalVendorDoc');
            if (isPageValid) {
                if (sFilename == '') {
                    alert('Please select a file to upload');
                    return false;
                }
                else {
                    var ddlFinalDocCategory = document.getElementById('<%=ddlFinalDocumentCategory.ClientID %>')
                    var chkPublishonWeb = document.getElementById('<%=chkFinalPublishOnWeb.ClientID %>')
                    ddlFinalDocCategory.disabled = false;
                    chkPublishonWeb.checked = false;
                    chkPublishonWeb.disabled = true;
                }
            }
            else {
                return false;
            }
        }
    }


    // Function to get the final document details from the grid and populate to the popup fields.
    function getFinalDocumentDetails(VendorContractDocs) {
        var oRow = VendorContractDocs.parentNode.parentNode;
        var irowIndex = oRow.rowIndex - 1;
        var iSeqNum = oRow.cells[0].innerHTML;
        var iDocCategoryCodeFK = oRow.cells[12].innerHTML;
        var bPublishInd = oRow.cells[13].innerHTML;
        var iVendorContractDocumentPK = oRow.cells[14].innerHTML;
        var ddlDocCategory = document.getElementById('<%=ddlFinalDocumentCategory.ClientID %>');
        if (iDocCategoryCodeFK != null && iDocCategoryCodeFK != '&nbsp;') {           
            ddlDocCategory.value = iDocCategoryCodeFK;
            ddlDocCategory.disabled = true;
        }

        if (iSeqNum != null && iSeqNum != '&nbsp;')
        { document.getElementById('<%=txtFinalSeqNum.ClientID %>').value = iSeqNum; }
        else { document.getElementById('<%=txtFinalSeqNum.ClientID %>').value = ''; }

        if (bPublishInd != null) {
            if (bPublishInd == "False")
            { document.getElementById('<%=chkFinalPublishOnWeb.ClientID %>').checked = false; }
            else
            { document.getElementById('<%=chkFinalPublishOnWeb.ClientID %>').checked = true; }
        }
        //ENABLE/DISABLE PUBLISH ON WEB CHECKBOX BASED ON CATEGORY.
        EnableDisablePublishOnWebVendorDocsTab(ddlDocCategory)

        if (iVendorContractDocumentPK != null)
        { document.getElementById('<%=hdnVendorContractDocumentPKFinal.ClientID %>').value = iVendorContractDocumentPK; }

        var modalDialog = $find("EditFinalVendorDocs");
        // get reference to modal popup using the AJAX api $find() function - modal popup's behaviour ID
        if (modalDialog != null) {
            modalDialog.show();
        }

       return false;
    }


Am i missing something here?

Appreciate the help

Thanks






Viewing all articles
Browse latest Browse all 5678

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>