2013-01-11 2 views
1

В какой-то момент у меня есть динамически сгенерированная строка с html в моем коде.
Я хочу открыть всплывающее окно с тем, что html является его источником.Открыть всплывающее окно с динамически сгенерированным Html из CodeBehind

Я попытался следующие:
Я создал этот метод на моем .aspx сайте (Javascript):

function OpenWindowWithHtml(html, title) { 
      var myWindow = window.open('', title); 
      myWindow.document.write(html); 
      myWindow.focus(); 
    } 

А в коде-за у меня есть это:

Response.Write("OpenPopupWithHtml(\"" + html + "\", \"" + title + "\");"); 

Но когда Я пытаюсь выполнить это, я получаю сообщение об ошибке.
Кто-нибудь видит, что я делаю неправильно здесь?
Или кто-нибудь знает лучший способ сделать это?

ответ

1

EDIT

на кнопку мыши это shoudl быть, как это

protected void btnAbct_Click(object sender, EventArgs e) { 
    ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "OpenPopupWithHtml('" + html + "', '" + title + "');"); 
} 

Чтобы выполнить код, т.е.,. Функция, которую вы написали в JavaScript

ClientScript.RegisterStartupScript(this.GetType(), 
    "newWindow", "OpenPopupWithHtml('" + html + "', '" + title + "');"); 

можно зарегистрировать клиентский сценарий как этот

if (!ClientScript.IsClientScriptBlockRegistered("exampleScript")) 
    ClientScript.RegisterStartupScript(this.GetType(), "exampleScript"," 
<script language = "'javascript'"> 
alert('you just registered the start up script') 
</script> 
"); 

из кода позади файла asp.net

Чтобы открыть всплывающее окно, просто замените эту строку выше, код

ClientScript.RegisterStartupScript(this.GetType(), 
    "newWindow", String.Format("<script>window.open('{0}');</script>", 
     "mypage.html")); 

Проверьте это для деталей: Register Client script in ASP.NET

+0

Но я хочу открыть всплывающее окно, как только у меня есть этот html. –

+0

@TorbenL. - не получить вас .. вы хотите открыть его на загрузку страницы? чем просто писать код в функции загрузки страницы. –

+0

№ Пользователь нажимает кнопку, и выполняется целая куча вещей, в результате чего получается html-строка. И как только у меня появится эта строка, я хочу открыть всплывающее окно. Я не хочу ждать каких-либо действий пользователя. И у меня также нет ссылки. Просто html. –

Смежные вопросы