Как и следовало ожидать, CommandArgument
- это свойство на стороне сервера серверного элемента управления Button
, и вы не можете назначить его из кода на стороне клиента, поскольку он не отображает соответствующий атрибут HTML.Однако вы можете настроить обратную передачу со стороны клиента с помощью функции __doPostBack()
, как указано ниже:
<script>
var facility_id = 50;
$('#something').click(function () {
__doPostBack("<%= submitBtn.UniqueID %>", facility_id);
});
</script>
Код позади
protected void submitBtn_Click(object sender, EventArgs e)
{
// assumed 'facility_id' is an int? or Nullable<int> property,
// make sure the event argument is parseable to integer value
var evArg = int.Parse(Request.Form["__EVENTARGUMENT"]);
facility_id = evArg;
}
Если вы не можетеиспользуйте функцию __doPostBack()
, поскольку она не определена на странице, тогда вы можете обработать событие PreRender
этой страницы и предоставить метод GetPostBackEventReference()
:
protected void Page_PreRender(object sender, EventArgs e)
{
ClientScript.GetPostBackEventReference(submitBtn, string.Empty);
}