ASP.NET: HtmlGenericControl <DIV> - обновить
У меня есть DIV
элемент:
<div runat="server" id="path">Nothing here... yet</div>
и JavaScript, который динамически меняет свой контент. После некоторых действий мой элемент выглядит следующим образом (протестирован с Firebug, с JS все в порядке):
<div runat="server" id="path">FirstTest - SecondTest - ThirdTest</div>
Затем я хотел бы сохранить его в текстовом файле (<asp:Button runat="server"...
):
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
Button1.Click += new EventHandler(this.GreetingBtn_Click);
}
void GreetingBtn_Click(Object sender, EventArgs e)
{
HtmlGenericControl path = (HtmlGenericControl)Page.FindControl("path");
Response.AddHeader("content-disposition", "attachment;filename=download.txt");
Response.ContentType = "text/plain";
Response.Write(path.InnerText);
Response.Flush();
Response.Clear();
Response.End();
}
</script>
Это также работает нормально (всплывающие окна SaveDialog, пользователь выбирает местоположение), но... в выходном файле есть только одна строка "Ничего здесь... пока". Похоже, он не реагирует на изменения, сделанные JavaScript!
Как я могу заставить его освежиться DIV
, так что я всегда могу сохранить актуальный контент?
Спасибо за любую помощь!
1 ответ
Вы можете обновить asp:Hidden
с новым значением и используйте это значение вместо поста обратно. PlaceHolder
Контроль не предназначен для двустороннего контроля.
Например
function UpdateText()
{
var text = ...;
document.getElementById("<%= path.ClientID %>").innerText = text;
document.getElementById("<%= pathHidden.ClientID %>").value = text;
}