前台js生成的id,后台怎么获取

问题描述

前台aspx代码:<headrunat="server"><title></title><scripttype="text/javascript">varaaa=true;functionclearBody(){if(aaa){document.body.innerHTML="";aaa=false;vara=document.getElementById("neirong");vard=document.createElement("input");d.type="button";d.id="button1";d.value="注册";d.runat="server";d.style.cursor="pointer";d.onclick=function(){location="?a=btnRegister_Click"}a.appendChild(d);}}</script></head><formid="form1"runat="server"><bodyid="neirong"style="height:289px"onclick="clearBody()">您好</body></form>后台cs代码:protectedvoidPage_Load(objectsender,EventArgse){if(Request.QueryString["a"]=="btnRegister_Click")btnRegister_Click();}protectedvoidbtnRegister_Click(){button1.value="登陆";}

解决方案

解决方案二:
用js生成的不是服务端控件,你可以在服务端buttonmyBT=newbutton();创建
解决方案三:
或者由客户端调用服务端方法,使用__doPostBack(ID,参数)
解决方案四:
ajax传过去就行了吧
解决方案五:
可以在后台创建动态ID
解决方案六:
你生成的,就不是一个服务器控件吧。使用ajax传递吧。或者后台动态生成服务器控件,但我还是推荐使用ajax
解决方案七:
你服务端是把按钮作为控件获取的,但是你的按钮控件却用js生成,这是不行的,asp.net的web控件无法用js在外部生成,其实也不是做不到,是很难,因为asp.net的web控件数据发送到服务端一定要以xml结构数据传送,你看着好像是html的一部分,其实是两部分,服务端解析页面后,你在本地浏览器查看网页源,里面好多xml结构数据呢,然后客户端点击按钮,按钮的数据会以xml结构发送给服务端,而这些步骤vsIDE里封装好的,并且隐藏掉了,只会以一个页面标签形势展现。换句话说,web控件在html里并不是一个html标签,而是一个服务端解析页面时用到的标签,而且这个标签可以自定义,自定义方法是重构system.web.page里面的Ihttphandler或者用.net内置的自定义标签方法。
解决方案八:
引用5楼hanjun0612的回复:

你生成的,就不是一个服务器控件吧。使用ajax传递吧。或者后台动态生成服务器控件,但我还是推荐使用ajax

请问怎么用
解决方案九:
引用3楼myhope88的回复:

ajax传过去就行了吧

请问ajax代码怎么写
解决方案十:
引用8楼lbj37的回复:

Quote: 引用3楼myhope88的回复:
ajax传过去就行了吧

请问ajax代码怎么写

这个三五句话说不清,自己找书上网研究,asp.net是提交整个页面的数据和状态,__viewstate存储了状态信息(事件触犯等);ajax实现了局部提交,首先创建XMLHttpRequest对象,类似下面(少部分)if(!window.XMLHttpRequest){window.XMLHttpRequest=functionwindow$XMLHttpRequest(){varprogIDs=['Msxml2.XMLHTTP','Microsoft.XMLHTTP'];for(vari=0;i<progIDs.length;i++){try{varxmlHttp=newActiveXObject(progIDs[i]);returnxmlHttp;}catch(ex){}}returnnull;}}

……xmlHttp(“post”or“get”,url,trueorfalse)//建立和服务器的通讯,true表示异步通讯xmlHttp.onreadystatechange=回调方法;//类似委托里的invoke或beginInvokexmlHttp.send();//发送请求……xmlHttp.responseText//取回由服务器返回的信息大致这个过程,细节还很多,手工凭印象打的

时间: 2025-01-01 04:59:18

前台js生成的id,后台怎么获取的相关文章

前台JS(jquery ajax)调用后台方法实现无刷新级联菜单示例_实用技巧

前台用AJAX直接调用后台方法,老有人发帖提问,没事做个示例 CasMenu.aspx页面: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="CasMenu.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tr

jax ro-关于AjaxPro调用后台方法,前台js都不执行

问题描述 关于AjaxPro调用后台方法,前台js都不执行 后台的 namespace Ext_js { [AjaxPro.AjaxNamespace("AppAjax")] public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //注册AJax if (!Page.IsPostBack) { AjaxPro.Utility.R

asp-前台js传递参数值到后台c#

问题描述 前台js传递参数值到后台c# aspx: <asp:HiddenField ID="txtLongitude" runat=server /> <asp:HiddenField ID="txtLatitude" runat=server /> <asp:Label ID=txtLabel runat=server></asp:Label> js: document.getElementById("t

用Ext上传文件后台不能获取数据

问题描述 用Ext做了一个上传的窗口,点击上传按钮后,firebug报如下错误:missing ) in parenthetical(<h1>HTTP Status 500 - </h1><hr noshad...lfilling this request.</u></p><p><b>ex ext-all-debug.js (第 12434 行)后台也获取不到任何数据,只有上传的进度条不停地走,请大家帮忙看一下哪儿有问题(附页面

C# 后台函数获取前台JS函数变量值

问题描述 前台:<scripttype="text/javascript">functionclick(node){varclickednode=node.id;alert(clickednode);}</script>后台:定义个函数,变量的值要前台的clickednode给赋值.不知到说明白没?? 解决方案 解决方案二:可以直接用hidden前台赋值后台取值解决方案三:引用1楼accomp的回复: 可以直接用hidden前台赋值后台取值 可以实现,也可以用a

jqgrid 分页查询-jqGrid 从后台能获取xml数据,但是前台grid数据就是显示不出来!页面有三条记录

问题描述 jqGrid 从后台能获取xml数据,但是前台grid数据就是显示不出来!页面有三条记录 5C 后台打印出来的数据:<Response> <transResult> <resultCode>1</resultCode> <resultInfoDesc>交易处理成功</resultInfoDesc> </transResult> <object class=""PageGrid"

.net下不用AJAX实现前台JS调用后台C#方法(小技巧)

纯属小技巧,高手见笑了. 一提到如何在前台JS调用后台C#方法,AJAX成为了必然的想法. 只是实现的细节采用AJAX 1.0或者AjaxPro的区别. 其实如果不用AJAX,我们也能够很方便地利用JS调用后台方法. 步骤如下: 1 前台放一个按钮.设置为隐藏.注意:不能直接设置Visible=false的方式,这样的话在ASP.Net 2.0编译后的代码里是找不到这个按钮的.需要设置风格:style="display:none;" 2 双击按钮,写入C#方法,或者写一个调用后台其他方

前台js对象在后台转化java对象的问题

 在开发项目中多次遇到前台js对象在后台转化java对象的问题,下面就为大家介绍下前台js对象转后台java对象,感兴趣的朋友可以了解下 最近项目开发的过程中,多次遇到前台js对象在后台转化java对象的问题.记录下做法待用.    简单来说就是在前台用JSON.stringify()方法将js对象转化为js字符串,后台接收json字符串并将其转化为javaBean.    前台代码:  代码如下: var data = {};  data.id = $('#id').val();  data.

easyui 删除复选框选中的数据,在后台怎么接受前台js数组

问题描述 easyui 删除复选框选中的数据,在后台怎么接受前台js数组 我需要做一个删除功能,datagrid第一列是复选框,我根据选中的复选框来删除,可能是单选或多选,我在前台是拿到选中的行的id,用一个数组保存下来, 看代码 // 返回被选中的行 然后集成的其实是 对象数组 var row = $('#tab').datagrid('getSelections'); var i = 0; var string = ""; for(i;i<row.length;i++){ s