在我的代码背后
protected void Page_Load(object sender, EventArgs e){
myDiv.innerHtml = "<span>potato</span>"
}
我在myDiv中添加了一些html。这是html:
<div id="myDiv" runat="server"></div>
<form id="form1" method="post" runat="server">
<button runat="server" onserverclick="Save_OnClick">Confirm changes</button>
</form>
页面完全加载后,我在div中看到<span>potato</span>
。
但是,如果我有将myDiv
内容更改为<span>fish</span>
内容的javascript事件,并且我想在我收到的c#myDiv
事件中检索save_onclick
的html内容<span>potato</span>
当我期待 <span>fish</span>
。
protected void Save_OnClick(object sender, EventArgs e)
{
string myDivHtml = myDiv.InnerHtml;
}
就像DOM没有为服务器端刷新一样。
我该如何解决这个问题?我的意思是在javascript交互之后获得HTML,或者是否有其他方式可以做到这一点?
答案 0 :(得分:0)
示例代码
class MyClass
{
static string divContent;
static DateTime compareTime;
private void timerGrip_Tick(object sender, EventArgs e)
{
if (File.Exists("yourFile.htm"))
{
DateTime tempDateTime = File.GetLastWriteTime("yourFile.htm");
if (tempDateTime != compareTime)
{
compareTime = tempDateTime;
GetDivContent();
}
}
}
private void GetDivContent()
{
string tempString = string.Empty;
StreamReader reader = new StreamReader("yourFile.htm");
while (!reader.EndOfStream)
{
tempString = reader.ReadLine();
if (tempString.Contains("<div id=\"myDiv\""))
break;
}
if (!string.IsNullOrEmpty(tempString))
divContent = tempString.Substring(31, tempString.Length - 37);
reader.Close();
}
}