我们(在工作中)有一家设计公司在html5中构建了一个静态网站,并且我已经将ASP.Net代码绑定在其中以使其正常运行。 登录屏幕包含一个表格:
<input class="ui-input-text ui-body-c" id="txtUsername" placeholder="Username…" value="" runat="server" />
<input class="ui-input-text ui-body-c" id="txtPassword" placeholder="Password…" value="" runat="server" type="password" />
<span class="select-decoration submit login">
<input class="submit-button" id="btnLogin" value="Login" type="submit" runat="server" onserverclick="submitbutton_click" />
</span>
...在验证登录后,我做了一个Response.Redirect到&#39; home&#39;屏幕。
我遇到的问题是,虽然页面似乎已加载,但如果您查看页面来源,则显示的代码仍然是登录页面,地址栏中的网址仍然是日志 - 在页面;由于登录是在root用户,所有内容页面都在&#39; / v2&#39;子目录,没有任何图像路径有效,因此不显示任何内容。
奇怪的是,如果你使用&#39; F12&#39;浏览器中的工具,用于检查的html是正确的html。这种行为适用于IE 10,Firefox和Chrome。
我已经尝试过Response.Redirect的真假标志(主要是出于绝望,无论如何都没有其他代码可以执行),没有任何乐趣。
我在这里找到的所有内容和谷歌都指的是PostBackTriggers,但我没有使用UpdatePanel,所以没有欢乐。
我确信这与HTML5有关,但对我来说这是一个新的领域,所以我挣扎着。
答案 0 :(得分:1)
我认为你实际上并没有设置cookie或任何东西,如果你在验证后刷新主页,你将被送回登录页面?如果是这种情况,问题在于,当您“查看页面来源”时,浏览器实际上并未提供您所在页面的当前HTML。它实际上是从服务器再次获取所有内容,就像普通请求一样,唯一的区别是浏览器现在向您显示HTML而不是呈现它。这也是F12开发人员工具DOM-inspector可以向您显示当前HTML的原因,因为它确实实时显示了当前的HTML。我希望我很清楚,而且我认为正确,我没有足够的声誉来评论。 :)