Я хочу вызвать функцию __doPostBack(eventTarget, eventArgument)
. В файле кода я бы затем прочитал аргументы как обычно: Dim param As String = Request("__EVENTARGUMENT")
. Однако это не работает для нескольких аргументов.
Кто-то здесь предложил использовать json или csv-list. Обычно я просто выбираю разделитель, разделяющий мои аргументы. Однако в моем случае теперь аргумент может содержать любой символ, поэтому я не могу просто выбрать какой-либо разделитель, поэтому я решил использовать JSON.
Я пробовал это.
Markup:
<button type="button" id="btn_postbackButton" onclick="__doPostBack('btn_postbackButton', {one: 'someText', two: 'moreText'});">TestButton</button>
Код-файл
If (IsPostBack) Then
Dim tgt As Object = Request("__EVENTTARGET")
Dim param As Object = Request("__EVENTARGUMENT") ' what datatype to use?
' [...]
' how to get arguments from json?
End If
Теперь, как мне вернуть мои аргументы в коде? Какой тип данных я использую для параметров? Вызов param.ToString()
только возвращает [object Object]
Более того, аргументы генерируются в файле кода в моем реальном приложении, и они могут быть разными, а некоторые могут отсутствовать, использование простого массива не работает для меня, поскольку вы не можете определить после факта какая позиция массива соответствует какому аргументу. И независимо от того, что все еще дает мне [object Object]
.