У меня есть следующие в моем файле .aspx:Выполнение JS кода из ASPX CodeBehind
<head runat="server">
<script type="text/javascript" src="js/code.js"></script>
</head>
...
<asp:Button ID="btnSend" runat="server" Text="Submit" OnClick="btnSend_Click" />
А в коде-за:
protected void btnSend_Click(object sender, EventArgs e)
{
// Code to add data to database
// Code to execute JavaScript function in code.js telling page transaction is complete
}
Каждый раз, когда я проверить это, добавляют данные к базе данных. 0
или 1
возвращается на основании успешной транзакции или нет. Код, который я использую для вызова функции JavaScript:
ScriptManager.RegisterClientScriptBlock(this, typeof(Page), "JSScript", "form_success(1);", true);
Однако сам JavaScript не выполнен. Я также пробовал Page.ClientScript.RegisterClientScriptBlock
и ClientScript.RegisterStartupScript
.
Как правильно выполнить функцию JavaScript из моего .JS-файла правильно?
Редактировать: На самом деле, я только что обнаружил, что любая функция, которую я делаю, которая управляет HTML-кодом на первой странице (например, divTest.InnerHtml = "Test";
), также не работает.
Редактировать 2: Упс, нашел проблему. Я должен был добавить UseSubmitBehavior="false" CausesValidation="false"
моей кнопке.
надеюсь, что эта ссылка вам полезна http://codepedia.info/2015/03/how-to-call-javascript-function-from-code-behind-server-side-asp-net-c/ –