如何在代码隐藏中获取回发参数值

Viv*_*k P 2 c# asp.net

我在 aspx 页面中触发回发事件,如下所示:

__doPostBack('AddNewEmployeeType', "empl", "sick");
Run Code Online (Sandbox Code Playgroud)

后面的代码:

string val = Request.Params.Get("__EVENTTARGET");
Run Code Online (Sandbox Code Playgroud)

通过上面的代码,我只能获得一个第一个值,但我的目的是获得所有三个参数值。我怎样才能做到这一点?

Tim*_*ter 6

使用__EVENTARGUMENT

string parameter = Request["__EVENTARGUMENT"]; 
string val = Request.Params.Get("__EVENTTARGET"); // AddNewEmployeeType
Run Code Online (Sandbox Code Playgroud)

这是一个教程:了解 JavaScript __doPostBack 函数

如果您需要将多个参数传递回代码隐藏,您需要自己用分隔符拆分它。例如,您可以使用管道|

__doPostBack('AddNewEmployeeType', "empl|sick");
Run Code Online (Sandbox Code Playgroud)

并在代码隐藏中:

string parameter = Request["__EVENTARGUMENT"]; 
string[] allParams = parameter.Split('|');
Run Code Online (Sandbox Code Playgroud)