Telerik RadWindow Javascript valeurs de retour ASP.NET

J'ai une page parent qui lance un telerik radwindow et passe un argument.

Une fois le radwindow est fait processeing la valeur, j'en ai besoin pour retourner à la page parent, et je voudrais que la page parent d'avoir accès à cette valeur dans mon code behind de la page.

J'ai essayé de passer la valeur à un champ caché sur ma page et ensuite déclencher un rafraichissement de la page et mon code derrière montres pour voir si la valeur est le travail.

Je n'arrive pas à obtenir que cela fonctionne. J'obtiens la valeur de retour dans le parent de javascript, mais je ne peux pas le faire à partir de mon champ caché dans le code derrière.

J'ai même l'avoir dans la zone de texte comme je le dois, mais, quand je trouve le champ Caché dans le code-behind, aucune valeur n'est définie.

Où j'ai mis des alertes, j'obtiens les valeurs affichées comme j'en ai besoin.

Je soupçonne que la raison pour laquelle je ne peux pas voir ma valeur de retour dans le fichier code-behind, c'est que lorsque la page est actualisée, je reçois une nouvelle page et non seulement de causer un message de retour.

Et n'est-il pas une meilleure façon que je peux le faire.

voici mon code de la page parente:

Parent ASPX:

<script type="text/javascript">
    function OpenWnd() {
        var oWnd = radopen(null, "RadWindow1");
    }
    function OnClientShow(oWnd) {
        //Create a new Object to be used as an argument to the radWindow
        var arg = new Object();
        //Using an Object as a argument is convenient as it allows setting many properties.
        arg.text = document.getElementById("TextBox1").value;
        //Set the argument object to the radWindow  
        oWnd.Argument = arg;
    }

    function ClientCallBackFunction(radWindow, returnValue) {
        //check if a value is returned from the dialog
        if (returnValue.newtext) {
            document.getElementById("Hidden1").value = returnValue.newtext;
            alert("HiddenValue: " + document.getElementById("Hidden1").value);
        }
    }
</script>
<form id="form1" runat="server">
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
</telerik:RadScriptManager>
<div>
    <telerik:RadWindowManager ID="RadWindowManager2" runat="server">
        <Windows>
            <telerik:RadWindow ID="RadWindow1" runat="server" OnClientShow="OnClientShow" ClientCallBackFunction="ClientCallBackFunction"
                NavigateUrl="Dialog2.aspx" />
        </Windows>
    </telerik:RadWindowManager>
</div>
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True"></asp:TextBox>
<input type="button" value="Send content to dialog page" onclick="OpenWnd()" />
<p>
    <input id="Hidden1" type="hidden" runat="server" />
</p>
</form>

Parent Code Derrière:

        protected void Page_Load(object sender, EventArgs e)
    {
        HtmlInputHidden hidden = (HtmlInputHidden)Page.FindControl("Hidden1");

        if (IsPostBack && !string.IsNullOrEmpty(hidden.Value))
        {
          //Code Here
        }
    }

Voici mon boîte de Dialogue code:

Dialogue ASPX:

  <script type="text/javascript">
        function GetRadWindow() {
            var oWindow = null;
            if (window.radWindow) oWindow = window.radWindow;
            else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
            return oWindow;
        }
        function ConfigureDialog() {
            //Get a reference to the radWindow wrapper
            var oWindow = GetRadWindow();
            //Obtain the argument 
            var oArg = oWindow.Argument;
            //Use the argument
            var oArea = document.getElementById("TextBox1");
            oArea.value = oArg.text;
        }
        function SendAndClose() {
            var oWindow = GetRadWindow();
            //Get current content of text area
            var arg = new Object();
            arg.newtext = document.getElementById("TextBox1").value;
            oWindow.Close(arg);
            RefreshParentPage();
        }
        function RefreshParentPage() {
            GetRadWindow().BrowserWindow.location.reload();

            alert("RefreshParentPage");
        }
    </script>

Merci pour toute l'aide

Ian

OriginalL'auteur SetiSeeker | 2010-01-10