Как запустить функцию JavaScript внутри файла ASPX из файла HTML?
У меня есть файл ASPX для обработки некоторых проверок от моих пользователей. Мне нужно подготовить некоторые коды и идентификаторы, чтобы пользователь мог работать с моими данными. Я написал файл Validation.aspx, проверяя все о моих пользователях в Page_Load
, Я хочу использовать некоторые функции JavaScript из HTML-файлов.
Внутри 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]). Я не могу получить доступ RunValidationAnswer();
в HTML-файлы.
Если я положу RunValidationAnswer();
в файле JS я могу получить к нему доступ, но я теряю мощные операции внутри Page_Load
файла aspx.
Пожалуйста, помогите мне найти способ решить мою проблему.
Я написал этот пример сценария в 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/>
1 ответ
Вы установили тип содержимого страницы ASPX как javascript, чтобы браузер знал, что это файл Javascript, так как по умолчанию тип содержимого любого aspx - HTML
Response.ContentType = "text/javascript"
** добавлять; для 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() %>");