2013-08-30 92 views
0

我有一個ASPX文件來處理來自我的用戶的一些驗證。我需要預先編寫一些代碼和ID以供用戶使用我的數據。我寫了一個Validation.aspx文件,檢查Page_Load中有關我的用戶的所有信息。我想從html文件中使用一些JavaScript函數。如何在HTML文件的ASPX文件中運行javascript函數?

ASPX文件裏面有一些javascript函數,我在運行時通過validation.aspx Page_Load來收集數據。

我希望把HTML文件內的腳本這樣的:

<script src="validation.aspx?a=1234" type="text/javascript" language="javascript" ><script/> 

<script> RunValidationAnswer(); <script/> 

RunValidationAnswer();函數在運行時的形式的用戶數據作出(來自查詢字符串retriving [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 compeletely訪問,但我無法從其他文件訪問該功能。

我想財產以後像這裏面的其他文件:

<script src="validation.aspx?a=1234" type="text/javascript" language="javascript" ><script/> 

<script> RunValidationAnswer(); <script/> 
+0

嘗試將runat =「server」添加到腳本 – rps

+0

runat =「server」沒有回答!提出了許多新問題! –

回答

0

你設置ASPX頁面的內容類型是JavaScript的,因此瀏覽器就會知道,是JavaScript文件,原因在默認情況下該內容類型的任何aspx是HTML

Response.ContentType = "text/javascript" 

** add;對於C#

Validation.aspx應該是除了這條線

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ScriptTest.aspx.cs" Inherits="ScriptTest" %> 

而在代碼文件空文件,你寫JS通過的Response.Write

public 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() %>"); 
+0

它是我的頁面標記:<%@ Page Language =「C#」AutoEventWireup =「true」ContentType =「text/javascript」CodeFile =「ScriptTest.aspx.cs」Inherits =「ScriptTest」%> –

+0

如果不是這樣,那麼它可能是JavaScript的語法問題..你可以發佈確切的錯誤,你可以嘗試在validation.aspx中的簡單警報('),看看它是否工作.. –

+0

我在驗證中寫

相關問題