Как писать javascript в asp.net в коде, используя С#
Привет,
как я могу написать код JavaScript в asp.net в коде за С#.
Например,
У меня есть событие кнопки click, когда я нажимаю кнопку, которую я хочу вызвать, этот код java script:
alert("You pressed Me!");
Я хочу знать, как использовать java script из кода позади.
Спасибо,
Ответы
Ответ 1
Собственно, это то, что вам нужно:
string myScriptValue = "function callMe() {alert('You pressed Me!'); }";
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "myScriptName", myScriptValue, true);
Скопируйте все javascript в строку и затем зарегистрируйте его на своей странице aspx в коде. Затем на странице aspx вы можете вызвать функцию javascript всякий раз, когда захотите. Вы должны написать этот код в методе Page_Load на странице С#.
Ответ 2
Посмотрите класс ScriptManager RegisterClientScriptBlock и RegisterStartupScript.
Ответ 3
Что-то вроде:
btnSomething.ClientClick = "alert('You pressed me!');";
Возможно, вам также захочется прочитать элемент управления ScriptManager и вывести блоки из script.
Ответ 4
Правильные ответы обычно - "Вы не делаете". Лучше определить свой код в файле .js и использовать jQuery для подключения желаемых событий.
$(document).ready(function() {
$('#myBtn').click(function() {
alert('Handler for .click() called.');
});};
Ответ 5
Не ответ, а предложение.
Смешение ваших js внутри вашего кода может вернуться, чтобы преследовать вас, я согласен с Адрианом Магдасом.
В любое время, когда вам нужно сделать простое изменение/обновление вашего javascript, вам придется перестроить проект, что означает повторное развертывание вместо простого вытеснения одного файла .js.
Ответ 6
Один из способов разместить некоторый javascript на странице в определенном месте:
ASP.Net
<script type="text/javascript">
<asp:Literal id="litScript" runat="server" />
</script>
С#
litScript.Text = "alert("Hello!");"
Конечно, вы можете положить что-нибудь там, и я бы порекомендовал javascript-библиотеку.
Использование Scriptmanager также является опцией.
Ответ 7
Если вы хотите зарегистрировать script, который будет использоваться в связи с UpdatePanel
(AJAX), используйте класс ScriptManager
, как указал Сани Хаттунен.
В противном случае вы должны использовать класс ClientScriptManager (методы Page.ClientScript.RegisterClientScriptBlock или Page.ClientScript.RegisterStartupScript)
Как указал другой пользователь, обычно можно зарегистрировать script по коду позади, и его следует избегать. Это не очень хорошая практика, и вы должны делать это только в тех случаях, когда у вас нет другого выбора.
Ответ 8
Response.Write("<script language='javascript'>alert('You pressed Me!');</script>");