Since you are capturing user action via popup, you will most likely use client side scripting to get the user input. Once you get the user input, you can set it to some control in your form which will get sent to your server when the form is submitted.
Here’s an expmple…
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="HiddenField1.value = prompt('Enter your feedback','');" />
<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</form>
This code handles the user input on the server side. (In this case, it simply displays it in a label, but at this point you get to decide what to do with it.)
protected void Page_Load(object sender, EventArgs e) {
if(IsPostBack) {
Label1.Text = HiddenField1.Value;
}
}
The button has a client script calling the prompt function. The value returned by the prompt function is set to the value of the hidden field, which gets submitted to the server. NOTE: In production code, you have to validate the user input.