动态加载一些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怎样结合相关推荐

  1. (转)用ASP.NET向Javascript传递变量 方法1:

    (转)用ASP.NET向Javascript传递变量 方法1: 用一个隐藏控件,把变量的值给隐藏控件,再用Javascript去找隐藏控件的值 window.document.getElementBy ...

  2. ASP.NET与JavaScript联合操作之一 选择DataGrid中的CheckBox控件后该行背景变色

    在网络开发中,经常遇到需要使用ASP.NET与JavaScript联合进行控制的情况.在本篇中,将使用DataGrid进行数据绑定,使用Javascript控制当选中其中的checkbox时,该行颜色 ...

  3. Asp.Net中用javascript实现弹出窗口永远居中

    //Asp.Net中用javascript实现弹出窗口永远居中 function ShowDialog(url)  {    var  iWidth=600; //模态窗口宽度   var  iHei ...

  4. 高效管理ASP.NET的JavaScript库

    简介 对于ASP.NET开发人员来说,管理项目中的JavaScript都很随意: 我想这很大程度上可能是因为网上没有如何妥善处理ASP.NET中JavaScript的可靠信息.此文的目的就是提供一种最 ...

  5. Asp.net AJAX JavaScript 基本类型扩展(7)——String 类型及其扩展

    参考: JScript  语言参考 http://msdn2.microsoft.com/en-us/library/c12461ed-986a-450b-be3d-81a4d808b48b Asp. ...

  6. asp php flash java,Linux_Flash 和 ASP / PHP 以及 javascript 的交互, 唉,第一次写文章,真是 - phpStudy...

    Flash 和 ASP / PHP 以及 javascript 的交互 唉,第一次写文章,真是很紧张,这是前几天在网上查资料和自己研究的结果,希望能对一些朋友有用.水平所限,肯定有错漏之处,烦劳高手指 ...

  7. Visual studio 中调试ASP程序、Javascript 代码 - 刘稻博客

    2019独角兽企业重金招聘Python工程师标准>>> PS: 1.在调试asp时,要先附加进程(附加到:自动:与具体调试网站对应的 dllhost.exe 或 w3wp.exe . ...

  8. 在ASP.NET使用javascript的一点小技巧

    我们在进行ASP.NET开发时,经常会用到一些javascript脚本,比如: private void Button1_Click(object sender, System.EventArgs e ...

  9. asp.net与JAVASCRIPT函数的相互调用

    1.如何在JavaScript访问C#函数? 方法一:   (1).首先建立一个按钮,在后台将调用或处理的内容写入button_click中;   (2).在前台写一个js函数,内容为document ...

  10. 在ASP.NET使用javascript的一点小技巧(转www.chinacs.net 中文C#技术站 )

    我们在进行ASP.NET开发时,经常会用到一些javascript脚本,比如: private void Button1_Click(object sender, System.EventArgs e ...

最新文章

  1. 清华唐杰:GPT-3表示能力已经接近人类了
  2. 《JavaScript高级程序设计》节点层次和DOM操作技术
  3. linux docker 限制容器可用内存
  4. SOA流程项目到底是业务流还是工作流
  5. 鼠标在linux下如何工作,Linux操作系统下的鼠标操作
  6. Android开发简易教程
  7. 《GitHub入门与实践》
  8. 基于Boost::beast模块的HTTP客户端协程
  9. 大牛书单 | 腾讯技术大咖推荐你五一看这些书
  10. 计蒜客难题挑战:奇怪的国家
  11. SAP License:SAP 初学者指南
  12. 过年了,就别再背电脑回家。
  13. python编程入门书籍-python入门书籍推荐
  14. mysql用户和权限管理总结_【转】mysql 用户及权限管理 小结
  15. 获取dm数据库基本信息
  16. 实时翻译软件-大家都在用的实时免费翻译软件
  17. vulnhub 网站靶机 DC-1 打靶记录
  18. 模拟电路设计(23)---模数和数模转换器概述
  19. 箱形图的优缺点,python绘制箱形图
  20. IME输入法编程 第一章

热门文章

  1. centos 多个yum源,系统怎么选择
  2. 搭建App主流框架_纯代码搭建(OC)
  3. Struts2 随笔1
  4. POJ-2251 Dungeon Master bfs搜索
  5. PostgreSQL技术周刊第20期:PostgreSQL何以支持丰富的NoSQL特性?
  6. PAT1066 Root of AVL Tree (25)(AVL树)
  7. iOS性能优化 启动
  8. Ajax监测开始执行及结束执行
  9. 如何用Dummy实例执行数据库的还原和恢复
  10. Android运行时识别API版本