[英]Change html code on server side asp.net
我想在加载时更改位于html文件中的一些字符串。 例如,我有一个html文件:
<html>
<head>
<title>MyTitle</title></head>
<body>
Some Text
<script type='text/javascript'>
/*some script*/
var myString = "TargerInfo";
/*some script*/
</script>
</body>
</html>
我在代码隐藏文件中使用Page_Load
方法:
protected void Page_Load(object sender, EventArgs e)
{
/*Insert necessary snippet of code*/
}
我应该使用什么代码将字符串“ TargerInfo”更改为“ OtherString”?
[EDIT]对不起,我忘了提及我只能在代码隐藏类中向html页面添加任何信息,因为该页面不是我生成的。 我想我应该使用这样的东西:
1)加载HTML文件
2)找到我的字符串
3)更换
4)发送HTML文件
有一个aspx页面,但是我只添加了一部分代码,而其他代码则是由VS添加的
除非我丢失了某些内容(因为这似乎有点像ASP.NET 101),否则您有几种选择...
在后面的代码中创建一个变量,然后使用它...
protected string _newText = "";
protected void Page_Load(object sender, EventArgs e)
{
_newText = "OtherString";
}
然后在ASPX中...
var myString = "<%=_newText%>";
否则,您可以使用<asp:Literal>
控件
更新
与@andDaviD进行广泛的聊天之后 ,事实证明javascript在SharePoint Foundation中的母版页中。
通过<%@ Page
指令中的DynamicMasterPageFile
属性在其“内容”页面中引用了母版页,这就是为什么他说他能够更新部分代码,而不能更新其他部分。
我仍然不确定是否可以修改“母版页”(由他本人或管理员修改),这是他需要从公司负责人那里找到的。 但我认为,向母版页添加属性或方法以提供他所需的内容是唯一明智的选择。
您可以使用内联aspx代码标签:
<script type='text/javascript'>
/*some script*/
var myString = "<%= getTargetInfo() %>";
/*some script*/
</script>
在代码背后:
protected String getTargetInfo()
{
return "OtherString";
}
您可以使用文字:
protected void Page_Load(object sender, EventArgs e)
{
literal.Text = string.Format("var myString = \"{0}\"", targetInfoValue);
}
标记:
<html>
<head>
<title>MyTitle</title></head>
<body>
Some Text
<script type='text/javascript'>
/*some script*/
<asp:Literal id="literal" runat="server" />
/*some script*/
</script>
</body>
</html>
您可以将其放在asp.net的hiddenfield中,并在后面的代码中更改hidden域。
在后面的代码中:
public string otherString;
otherString = "some text" //update the string with the value oyu want.
在aspx页面中,将此行放在您要查看otherString的任何位置。
<%=otherString%>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.