asp.net кнопка использует функцию возврата javascript
-
21-09-2019 - |
Вопрос
У меня есть элемент управления asp: button, и я использую параметры "CommandName" и "CommandArgument" в файле .aspx.Имя команды находится с помощью <%# Eval("Name") %>, но командный аргумент должен быть найден с помощью функции javascript.Однако я не совсем уверен, как сделать это встроенным.Функция возвращает число (integer), которое должно использоваться в качестве значения CommandArgument.Возможно ли это сделать?Спасибо
ОТРЕДАКТИРОВАНО ДЛЯ ДОБАВЛЕНИЯ КОДА Я добавил пример кода (у меня нет доступа к реальному коду atm).Однако, в принципе, CommandArgument должен быть значением, возвращаемым функцией CalculateLength().
function CalculateLength(a,b) {
return a*b;
}
<asp:Button ID="btnUpdate" runat="server" Text="Update" CommandName=<%# Eval("Name") %> CommandArgument= ??? //Should be result of CalculateLength(a,b).
Решение
Я не уверен, как вы собираетесь заставить javascript работать, потому что aspx-код работает на стороне сервера и создает выходные данные для вашей кнопки.К моменту запуска javascript код страницы уже собран, а также HTML-код кнопки и прикрепленный javascript.
Есть ли в любом случае способ вычислить функцию на стороне сервера, а затем просто выполнить:
CommandArgument="<%= CalculateLengthServerSide() %>"
Вам не нужно просто использовать данные, к которым вы привязываетесь, вы можете вызвать любую серверную функцию.
Редактировать: Попробуйте перенести вашу метку, на которой хранится количество, в текстовое поле и сделать ее доступной только для чтения, чтобы пользователи не испортили ее.После нажатия кнопки вы должны быть в состоянии найти элемент управления textbox и прочитать введенное значение.