WebPart开发中的注册JavaScript事件

先看代码:

ExpandedBlockStart.gif 代码
 1  <! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
 2  < html  xmlns ="http://www.w3.org/1999/xhtml" >
 3  < head >
 4       < title ></ title >
 5 
 6       < script  type ="text/javascript" >
 7           function  test() {
 8               var  s  =  document.getElementById( " select1 " );
 9              s.setAttribute( " onchange " " show(' " + s.value + " '); " );      
10          }
11           function  show(m) {
12              alert(m);
13          }
14       </ script >
15 
16  </ head >
17  < body  onload ="test()" >
18       < select  id ="select1" >
19           < option  value ="a" > a </ option >
20           < option  value ="b" > b </ option >
21           < option  value ="c" > c </ option >
22       </ select >
23  </ body >
24  </ html >

 

一个普通的ASPX的页面,运行没有任何问题,但是放到WebPart中,你试试,change事件不激发了?

解决的办法有两个:

  1. 在SharePoint的母板页中的最上面加上如下:
    <! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >

     

  2. 修改JavaScript代码,如下:
    ExpandedBlockStart.gif 代码
             function  test() {
                
    var  s  =  document.getElementById( " select1 " );
                s.onchange 
    =  show;
            }
            
    function  show() {
                
    var  s  =  window.event.srcElement;
           
                alert(s.value);
            }

     

    原因大家仔细想一想,为什么?

 

转载于:https://www.cnblogs.com/wengnet/archive/2009/12/04/1616765.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值