__doPostback方法

dopostback调用后台方法浏览器兼容性    <asp:Button runat="server" ID="btnSave" CssClass="button2" Text="|Save|" UseSubmitBehavior="false" OnClientClick="this.disabled=true;__doPostBack('_ctl0$WorkButton$btnSave','');" /&g 阅读详情
2009年04月25日 星期六 16:04

有的时候想在客户端触发服务器端控件的CLICK事件时我们这么写__doPostBack("id",""),但是为什么有的时候会失效呢?
通过查看客户端源代码发现页面中没有生成__doPostBack()这段JS.
原来ASP.NET要产生__doPostBack的前提是服务器控件要有AutoPostBack = true 并且 控件要启用才行

如果我们没有上面的条件但又想要页面产生__doPostBack怎么办呢?
解决方法:
原来Page里面有个方法是GetPostBackEventReference,这个就可以产生__doPostBack,它有两个版本

1.取得用戶端指令碼函式的參考,(這個參考會) 在叫用時讓伺服器回傳網頁。
public string GetPostBackEventReference(Control);

2.取得用戶端指令碼函式的參考,(這個參考會) 在叫用時讓伺服器回傳網頁。這個方法同時也傳遞參數給在伺服器上執行回傳處理的伺服器控制項。public string GetPostBackEventReference(Control, string);

如果只想产生__doPostBack,则只用第一种就行了,
第二种带参数的,可以通过判断所带入的参数做不同的动作,
下面举个例子.

前台页面
有个服务器控件

<asp:Button id="Button1" runat="server" Text="Button"></asp:Button>

一个客户端控件用来触发服务器端

<a href="#" onclick="document.getElementById('Button1').click()">触发服务器端按钮事件</a>

(2)
利用GetPostBackEventReference给客户端生成__doPostBack()
前台  

<a href="#" onclick="<%=PostBack()%>">触发服务器端按钮事件</a>

后台

protected string PostBack()
        
{
            
return this.Page.GetPostBackEventReference(this.Button1,"haha");
         }

通过__EVENTARGUMENT="haha"可以判断是不是点了那个链接的PostBack
把Button1的按钮事件这么写:

if(Request["__EVENTARGUMENT" ]=="haha")
            
{
                 Response.Write(
"这个是链接的PostBack");
             }

            
else
            
{
                 Response.Write(
"这个不是链接的PostBack");
             }
解决IE10以上版本doPostBack未定义 .Net4.0下ASP.NET在IE10以上版本访问的时候,遇到分页或者控件回发的时候会提示doPostBack未定义,这个补丁是用来在服务器端修正这个问题,安装完需要重启。如不想在服务器修正,可以看http://blog.csdn.net/5653325/article/details/17001447 参考在客户端修正(就是指定IE10以上版本访问网站的时候的兼容模式) 立即下载

相关推荐

深入理解__doPostBack 客户端调用服务端事件

__doPostBack是一个纯粹并且是非常简单的javascript函数,大部分的页面PostBack都是由它触发的。

__doPostBack无效的处理方法

有的时候想在客户端触发服务器端控件的CLICK事件时我们这么写__doPostBack("id",""),但是为什么有的时候会失效呢? 通过查看客户端源代码发现页面中没有生成__doPostBack()这段JS. 原来ASP.NET要产生__doPostBack的前提是服务器控件要有AutoPostBack = true 并且 控件要启用才行 如果我们没有上面的条件但又想要页面产生__d...

weixin_30540691的博客 504

centos7安装Ambari 2.7.5 + HDP3.1.5

准备 1.安装包准备: Ambari2.7.5、HDP31.5、libtirpc-devel: centos7操作系统: 链接:https://pan.baidu.com/s/1vzvio5rAMsbYF0-0vBs5dw 提取码:xij9

kxq的博客 5091

(论坛答疑点滴)__doPostBack()无效?

 有的时候想在客户端触发服务器端控件的click事件 我们这么写__doPostBack(id,) 但是为什么有的时候会实效? 因为__doPostBack()函数并没有在页面产生 (如果没有类似linkbutton等控件的话asp.net引擎不产生这段js) 解决方法如下: 比如前台页面 asp:Button id="Button1" runat="server" Text="Butto

1210

【HAL库-STM】智能温控按键小风扇【胎教级教学】

硬件设备:DHT11,0.96寸oled屏,二/三/四线风扇(不挑),面包板 、f10的精英板等等。当人在的风扇面前时可以自行控制风扇,不在面前时又想开风扇就让他温控自行开启,(在这里有一个想法就是加上蓝牙和wifi控制的功能能够远程遥控,这个如果做的再全一点就要自主研发是一个多功能app,这里没有做。针对这个dht11,我一开始是卡在了这个check函数里面,一直是我给完dht11低电平和高电平后,dht11不回复我低电平和高电平,这个不是我的问题,当时代码是没毛病的,这个点一直卡着我。吐血五天实现小成品

weixin_52451652的博客 1738

进阶篇第8节:寄存器压力——寄存器溢出对性能的影响及优化

**摘要:GPU寄存器是最快的存储单元(1周期访问),但数量有限。过高的寄存器使用会导致溢出(变量存入慢速本地内存)或降低占用率(减少并发线程数),严重影响性能。优化方法包括复用变量、使用共享内存替代寄存器数组、限制寄存器数量(--maxrregcount)等。实际测试显示,将寄存器使用从48个降至24个可使性能提升37%。分析工具如Nsight Compute可帮助检测寄存器压力。面试常见问题涉及寄存器溢出的检测与优化策略。

PeterPan的博客 94

__doPostBack()无效 ?

  今天在写程序的时候遇到一个问题,就是利用前台调用后台的事件。根据网上的资料只要,__doPostBack(Button1,)就可以了,但是却总是提示“缺少对象”。开始以为是页面某个js写错了,调试了半天后放弃了,后来经过在网上狂搜资料,看看有没有人遇到相同的问题,最后终于在一个博客的最后看到了这样一段话“NET 生成javascript的 __doPostBack()函数是有条件的,当

解释^哆餘嘚 810

OD图 arcgis曲线制作插件 od图曲线 路径图曲线制作插件 航线图曲线制作插件

在ArcGIS 10.2 中导入节点数据,打开插件,选择输入起始节点和目标节点的节点文件Point,以Name字段(地名)为连接线的起始字段和目标字段,(Input Table File)选择连接关系表格SDLine.csv,(Origin Column 和 Destination Column)为起始节点和目标节点,(Output Path)为输出路径,应选择.gdb数据库路径,否则容易报错,(Chord Coefficient)为连线的曲率,数值越大,曲率越高。运行环境:ArcGIS10.2。...

JData_Engineer的博客 2669

JavaScript中的 __doPostBack() 方法

__doPostBack可以实现客户端控件调用服务器端控件的响应, __doPostBack方法的格式为:__doPostBack(eventTarget,eventArgument)   参数:  eventTarget:是要触发的服务器控件的客户端ID        eventArgument:参数 这个两个值在后台可以通过下边方法得到: Request["__EVENTTARGET"]:获取得到引发页面PostBack的控件ID Request["__EVENTARG

csnewdn的专栏 1378

第二节:Vben Admin 最新 v5.0 (vben5) + Python Flask 快速入门 - Python Flask 后端开发详解(附源码)

大家好,我是cuiwin!本节内容,我们从零开始开发基于Python(Flask)的后端项目,对接Vue Vben Admin(vben5)。登录mysql数据库执行: 创建数据库。

cuiwin的专栏 2262

OpenCV实战之人脸美颜美型(八)——大眼(下)

我们需要将上述描述量化表达,以r代表上述变形区域的圆的半径,X表示原始图像像素到变形圆圆心的距离,Y表示像素变形后的其距离变形圆圆心的距离,则其形状大致如下图所示。如下图所示,我们可以规定处理区域为眼睛为圆心的一个圆形,从圆心区域开始图像会放大,但该放大的比例随着距离圆心的距离而变小,直至边缘区域的放大比例为0。不过在实际图像变形操作中我们要从目标图像映射到原图,因此我们需要将X/Y调换,让X表示变形后图像的像素距离变形圆中心的距离,Y表示原图像素距离变形圆中心的距离,则其形状如下图所示。

On my way 901

JS中__doPostBack用法

要理解__doPostback函数的用法,首先我们要理解Asp.net 中服务端控件事件是如何触发的。 Asp.net 中在客户端触发服务端事件分为三种情况: 一. WebControls中的Button 和HtmlControls中的Type为submit的HtmlInputButton 这两种按钮最终到客户端的表现形式为: <input name="Submit1" id="Submi...

极客神殿 5514

Qt C++ 实现一个完整的扫雷

mineCountLabel = new QLabel(QString("地雷: %1").arg(remainingMines, 3, 10, QChar('0')), this);mineCountLabel->setText(QString("地雷: %1").arg(remainingMines, 3, 10, QChar('0')));timeLabel->setText(QString("时间: %1").arg(gameTime, 3, 10, QChar('0')));" : "游戏失败!

寒寒豆豆软件公司的博客 107

用__doPostBack()方法调用后台方法的方式中,页面没有__doPostBack()函数的解决

用ClientScriptManager.GetPostBackEventReference 方法产生__doPostBack()函数 "C#"  %>"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">"server">  public class

ikmb的专栏 3792

【WRF-DART第一期】WRF/DART概述

【WRF-DART第一期】WRF/DART概述

WW、forever的博客 107

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

__doPostBack方法解析

今天工作时遇到一个需要根据Gridview具体内容来判断是否弹出窗口,而Gridview中包含分页、排序等,它们并不能直接从查询字符串、或表单简单的分析出。这是因为存在__doPostBack方法,以及和其紧密关联的__ EVENTTARGET和__ EVENTARGUMENT。 使用在asp.net开发网页时,页面Html代码会包含类型下面代码的__doPostBack方法: script

『芋』头℃的专栏 815

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

__doPostBack简单的使用方法

__doPostBack是最简单的使用方法是:1、在页面上划一个能产生 __dopostback函数的控件.(并不是所有的web控件都是用__dopostback产生事件回发),我个人喜欢用linkbutton,然后把text属性设为空值,如果隐藏控件的话,那么__dopostback函数不会产生. 2、然后在你想要触发postback事件的控件ID,写入到如下函数调用中:__do

DotNet1227的专栏 1775

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

__doPostBack 方法解析

function __doPostBack(eventTarget, eventArgument)的eventTarget参数是引起回送的控件的ID,eventArgument参数是回调参数(与控件相关的附加数据)。 当如果是删除时,eventArgument参数是Delete开头;当如果是插入时,eventArgument参数是Insert开头;当如果是编辑时,eventArgument参数是...

weixin_30642305的博客 478

__doPostBack()方法研究

一doPostBack的原理 __doPostBack是一个纯粹并且是非常简单的javascript函数,大部分的页面PostBack都是由它触发的。注意,这里是“大部分”,因为只有两个Web Server Control 会自己触发页面的PostBack,其它的所以控件都是通过__doPostBack函数触发页面的PostBack,那先来看一下这个函数的定义吧: CODE1: <i...

weixin_34279246的博客 88

asp后台调用产品数据___doPostBack如何执行按钮的后台方法

今天又遇到一个问题, 页面会自动刷新, 代码如下: 这里使用了OnClientClick这个方法, 这个方法是客户端的方法, 后面接着一个函数, 函数中要return true或 return false ,如果return true, 就会接着执行OnClick的方法, 在我之前的文章grape:如何在父子页面中传输数据(layer)​zhuanlan.zhihu.com我有说过, 我将同步的方...

weixin_42133861的博客 178

关于用__doPostBack在前端调用后端的方法

第一步:在Web界面上添加一个LinkButton,并把它隐藏起来,这里的隐藏不是把Visibe设为false,而是把LinkButton的Text设为空。 第二步:覆写父类方法 using System.Reflection; protected override void OnLoad(EventArgs e) { base.OnLoad(e); if ...

aixu5561的博客 255

Js使用__doPostBack()触发控件方法

$(function () { $("#a1").click(function () { __doPostBack('BtnAlert', ''); return false; }); }); 测试

wei_jie_zhang的专栏 9411

__doPostBack未定义解决方法

IE10与IE11出现的__doPostBack未定义解决方法 微软NET环境下的一个BUG,官方已经发布了新的补丁包,可直接通过下载最新Framwork补丁得到修改。 除此办法以外,还可以在项目中直接修改,方法如下: 1、项目根目录下,建App_Browsers文件夹 2、在文件夹中新建文件ie.browser文件,文件内容粘贴如下内容:

阿斌 3061
上一篇: 超时时间已到。在操作完成之前超时时间已过或服务器未响应。 (.Net SqlClient Data Provider)
下一篇: JS中的定时器,延迟器
ulark
博客等级 码龄17年 31粉丝 530原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值