Чтобы более тесно связать его с моделью постбэка, я обертываю свой C #
Метод расширения C #
public static string GetPostBackLink (this Control c, string argument = "") {
return c.Page.ClientScript.GetPostBackEventReference(ctl, argument, true) + ";";
}
ASPX
<asp:LinkButton id="lnkDoThis" runat="server" onclick="lnkDoThis_Click"
style="display: none;"></asp:LinkButton>
<asp:HiddenField id="hdnParamHolder" runat="server" />
JS
function DoSomething(param) {
$("[id$='hdnDealTemp']").val(param);
<%= lnkDoThis.GetPostBackLink() %>
}
CodeBehind
protected void lnkDoThis_Click (object sender, EventArgs e) {
var myParam = hdnParamHolder.Value;
// Do server actions here
}
Что касается открытия во втором окне ... Я не уверен, что следую, когда вы хотите, чтобы это произошло? Если это происходит после обратной передачи, вам нужно будет прочитать данные из элемента управления hdnParamHolder при перезагрузке страницы.