You can also place the TextBox in a Update panel, leave the button out of the update panel and set a trigger that will cause the button to do a Async postback like this:
<asp:Button ID="btnSubmit" runat="server />
<asp:UpdatePanel ID="upTextBox" runat="server">
<ContentTemplate>
<asp:TextBox ID="tbTitle" runat="server" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnSubmit" />
</Triggers>
</asp:UpdatePanel>
And then add a button event that will change the text of the text box.
Or if you don't want to add the text box in a Update Panel you can register a startup script to set the text of the textBox something like this:
ScriptManager.RegisterStartupScript(this, GetType(), "setTextBoxText", "<script type='text/javascript'>$('#"+tbTitle.ClientId+"').val('submit button has been clicked');</script>", false);