asp.net和javascript怎样结合
动态加载一些script
一般来说有三种情况
(1)在前台放置<asp:Literal Runat="server"></asp:Literal>指定位置输出
(2)后台通过RegisterStartupScript和RegisterClientScriptBlock输出
(3)Response.Write输出
举例如下
(1)
前台
<asp:Literal ID="myLiteral" Runat="server"></asp:Literal>
后台
this.myLiteral.Text+="<script>alert('test');</script>";
查看源代码可以看到原来的
<asp:Literal ID="myLiteral" Runat="server"></asp:Literal>
位置变成了
<script>alert('test');</script>
(2)
为了更加清楚看到两个的区别,前台如下
<form id="Form1" method="post" runat="server">
<input type="hidden" value="test" id="myhiden">
</form>
后台如下
Page.RegisterStartupScript("","<script>alert('RegisterStartupScript:'+document.all.myhiden.value)</script>");
Page.RegisterClientScriptBlock("","<script>alert('RegisterClientScriptBlock:'+document.all.myhiden.value)</script>");
结果如下:只出现对话框显示RegisterStartupScript:test
查看源代码如下:
<form name="Form1" method="post" action="WebForm4.aspx" id="Form1">
<input type="hidden" name="__VIEWSTATE" value="dDwtNjU0MzcyMTk1Ozs+NmbLf6dWkF/Q/FLKKsdPPfhFXr0=" />
<script>alert('RegisterClientScriptBlock:'+document.all.myhiden.value)</script>
<input type="hidden" value="test" id="myhiden">
<script>alert('RegisterStartupScript:'+document.all.myhiden.value)</script>
</form>
两者区别不用多说了吧
(3)
我们再加一句Response.Write("test")
查看源代码发现test字样出现在最前面
test
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
用它来输出转向代码比较合适
<script>location.href='page.aspx'</script>
最后在提醒一下大家,有很多人在给一个控件加js代码的时候会这么写:
this.mybody.Attributes["onclick"]="<script>alert('test');</script>";
这么写是不对的
应该是
this.mybody.Attributes["onclick"]="alert('test');";
比如你在前台书写<a οnclick=>的时候你会写<a οnclick='<script>alert('test')<script>'>吗?
道理是一样的!
但是相反,有的人在
Page.RegisterStartupScript("","<script>alert('test');</script>");的时候不写里面的<script>也是不行的
(虽然名字叫Register...Script)
转载于:https://www.cnblogs.com/kary/archive/2005/03/18/120846.html
asp.net和javascript怎样结合相关推荐
- (转)用ASP.NET向Javascript传递变量 方法1:
(转)用ASP.NET向Javascript传递变量 方法1: 用一个隐藏控件,把变量的值给隐藏控件,再用Javascript去找隐藏控件的值 window.document.getElementBy ...
- ASP.NET与JavaScript联合操作之一 选择DataGrid中的CheckBox控件后该行背景变色
在网络开发中,经常遇到需要使用ASP.NET与JavaScript联合进行控制的情况.在本篇中,将使用DataGrid进行数据绑定,使用Javascript控制当选中其中的checkbox时,该行颜色 ...
- Asp.Net中用javascript实现弹出窗口永远居中
//Asp.Net中用javascript实现弹出窗口永远居中 function ShowDialog(url) { var iWidth=600; //模态窗口宽度 var iHei ...
- 高效管理ASP.NET的JavaScript库
简介 对于ASP.NET开发人员来说,管理项目中的JavaScript都很随意: 我想这很大程度上可能是因为网上没有如何妥善处理ASP.NET中JavaScript的可靠信息.此文的目的就是提供一种最 ...
- Asp.net AJAX JavaScript 基本类型扩展(7)——String 类型及其扩展
参考: JScript 语言参考 http://msdn2.microsoft.com/en-us/library/c12461ed-986a-450b-be3d-81a4d808b48b Asp. ...
- asp php flash java,Linux_Flash 和 ASP / PHP 以及 javascript 的交互, 唉,第一次写文章,真是 - phpStudy...
Flash 和 ASP / PHP 以及 javascript 的交互 唉,第一次写文章,真是很紧张,这是前几天在网上查资料和自己研究的结果,希望能对一些朋友有用.水平所限,肯定有错漏之处,烦劳高手指 ...
- Visual studio 中调试ASP程序、Javascript 代码 - 刘稻博客
2019独角兽企业重金招聘Python工程师标准>>> PS: 1.在调试asp时,要先附加进程(附加到:自动:与具体调试网站对应的 dllhost.exe 或 w3wp.exe . ...
- 在ASP.NET使用javascript的一点小技巧
我们在进行ASP.NET开发时,经常会用到一些javascript脚本,比如: private void Button1_Click(object sender, System.EventArgs e ...
- asp.net与JAVASCRIPT函数的相互调用
1.如何在JavaScript访问C#函数? 方法一: (1).首先建立一个按钮,在后台将调用或处理的内容写入button_click中; (2).在前台写一个js函数,内容为document ...
- 在ASP.NET使用javascript的一点小技巧(转www.chinacs.net 中文C#技术站 )
我们在进行ASP.NET开发时,经常会用到一些javascript脚本,比如: private void Button1_Click(object sender, System.EventArgs e ...
最新文章
- 清华唐杰:GPT-3表示能力已经接近人类了
- 《JavaScript高级程序设计》节点层次和DOM操作技术
- linux docker 限制容器可用内存
- SOA流程项目到底是业务流还是工作流
- 鼠标在linux下如何工作,Linux操作系统下的鼠标操作
- Android开发简易教程
- 《GitHub入门与实践》
- 基于Boost::beast模块的HTTP客户端协程
- 大牛书单 | 腾讯技术大咖推荐你五一看这些书
- 计蒜客难题挑战:奇怪的国家
- SAP License:SAP 初学者指南
- 过年了,就别再背电脑回家。
- python编程入门书籍-python入门书籍推荐
- mysql用户和权限管理总结_【转】mysql 用户及权限管理 小结
- 获取dm数据库基本信息
- 实时翻译软件-大家都在用的实时免费翻译软件
- vulnhub 网站靶机 DC-1 打靶记录
- 模拟电路设计(23)---模数和数模转换器概述
- 箱形图的优缺点,python绘制箱形图
- IME输入法编程 第一章