Обновление ASP.NET iFrame без обновления страницы с помощью Actionscript 3 - PullRequest
0 голосов
/ 10 января 2010

Мне бы хотелось иметь анимированное FLEX SWF-меню в .NET и использовать нажатия кнопок для обновления iFrame в приложении с поддержкой Ajax .NET 2.0 без обновления или обновления страницы. Если я использую URLVaribles во Flex, единственный способ, которым я получил их к ASP.NET, - через страницу навигации по URL, которая всегда обновляет экран. Есть функция LOADVARS, но я не заставил ее работать. Есть ли какие-либо предложения о том, как это сделать?

Мне нужно изучить использование JSON для Flex ??? Или WebOrb ???

Это отлично работает ... но с обновлением страницы (что не круто) ...

  navigateToURL( new URLRequest( "http://localhost:50294/WEBAPP/Default.aspx?P=2&H=500" ), "_self" );

Это НЕ работает нормально ... (на самом деле это просто загружает всю страницу .NET в FLEX, а не то, что я ищу)

var variables:URLVariables = new URLVariables();
variables.P="1";
variables.H="400";
var request:URLRequest = new URLRequest();
request.url = "http://localhost:50294/Timber2/Default.aspx?";
request.method = URLRequestMethod.POST;
request.data = variables;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(Event.COMPLETE, uploadComplete);
try
{
    loader.load(request);
}
catch (error:Error)
{
    trace("Unable to load URL");
}

Ответы [ 2 ]

0 голосов
/ 10 января 2010

Вы можете использовать navigateToURL; вам просто нужно указать имя iframe в коде. Например, если он называется «myFrame»:

navigateToURL(
    new URLRequest("http://localhost:50294/WEBAPP/Default.aspx?P=2&H=500"), 
    "myFrame");

Еще лучше, используйте относительные ссылки, чтобы ваш код работал в производственной среде (при условии, что меню и iframe находятся на одном веб-сервере):

navigateToURL(new URLRequest("/WEBAPP/Default.aspx?P=2&H=500"), "myFrame");
0 голосов
/ 10 января 2010

То, что вы действительно пытаетесь сделать, это интерфейс с JavaScript, а не .NET. Это достигается через ExternalInterface:

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html

ExternalInterface обеспечивает соединение первого класса с JS через Actionscript 3 и должно быть в состоянии выполнить то, что вы просите.

...