我有一个ASPX文件来处理我的用户的一些验证。我需要预先准备一些代码和ID,以便用户使用我的数据。我写了一个Validation.aspx文件,在Page_Load
中检查我的用户的所有内容。我想从html文件中使用一些javascript函数。
ASPX文件中有一些javascript函数,我在运行时通过validation.aspx Page_Load
收集数据。
我想把一个脚本放在像这样的html文件中:
<script src="validation.aspx?a=1234" type="text/javascript" language="javascript" ><script/>
<script> RunValidationAnswer(); <script/>
RunValidationAnswer();
函数在运行时形成用户数据(从QueryString [a = 1234]中恢复)。我无法在html文件中访问RunValidationAnswer();
。
如果我将RunValidationAnswer();
放在JS文件中,我可以访问它,但是我在aspx文件的Page_Load
内失去了强大的操作。
PLZ帮助我找到解决问题的方法。
我在Validation.aspx中编写了这个示例脚本
<script type="text/javascript" language="javascript">
function RunValidationAnswer()
{
alert("hi");
}
<script/>
在validation.aspx中可以完全访问它,但我无法从其他文件访问此函数。
我想在其他文件中输入这样的东西:
<script src="validation.aspx?a=1234" type="text/javascript" language="javascript" ><script/>
<script> RunValidationAnswer(); <script/>
答案 0 :(得分:0)
您是否将ASPX页面的内容类型设置为javascript,以便浏览器知道这是Javascript文件,因此默认情况下任何aspx的内容类型都是HTML
Response.ContentType = "text/javascript"
**添加;对于C#
除此行外,Validation.aspx应为空文件
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ScriptTest.aspx.cs" Inherits="ScriptTest" %>
在代码文件中,您可以通过response.write
编写JSpublic partial class ScriptTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.ContentType = "text/javascript";
Response.Write("alert('javascript works')");
}
}
你也可以使用ASPX页面 - 没有代码文件 - 像这样
<%@ Page Language="C#" AutoEventWireup="true" ContentType="text/javascript" %>
alert("script works <%=DateTime.Now.ToString() %>");