javascript调用函数函数调用问题(惰性载入)

javascript问题:html事件中调用javascript有参函数,下面我写的。Onclick这里怎么错了_百度知道
javascript问题:html事件中调用javascript有参函数,下面我写的。Onclick这里怎么错了
&script language=&javascript&&
function chuan(ont){
alert(ont); } &/script&&/head&&body&用户名:&input type=&text& id=&txtname& /&&br /&密&&&码:&input type=&text& id = &txtpwd& /&&br /&&input type=&button& value=&提交& oncli弧笭汾喝莴估风台袱郡ck=&javascript:chuan(txtname.value)& /&&/body&
提问者采纳
我试了,没有报错啊,你的浏览器版本是多少啊?是不是进行了ActiveX控件禁止的设置啊?
其他类似问题
onclick的相关知识
其他3条回答
//加上引号就可以了&input type弧笭汾喝莴估风台袱郡=&button& value=&提交& onclick=&javascript:chuan('+txtname.value+')& /&
&input type=&button& value=&提交& onclick=&javascript:chuan($('#txtname').val())& /&
提示什么?
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁.Net中前台javascript与后台c#函数相互调用问题(转)
<font COLOR="#.
javaScript函数中执行C#代码中的函数:方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
2、在前台写一个js函数,内容为document.getElementByIdx_x("btn1").click();
3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;方法二:1、函数声明为public&&&&&&&&&&&&&
&&&&&&&&&&
后台代码(把public改成protected也可以)
&&&&&&&&&&
public string ss()
&&&&&&&&&&
&&&&&&&&&&&&&
return("a");
&&&&&&&&&&
2、在html里用&%=fucntion()%&可以调用
&&&&&&&&&&
&&&&&&&&&&
&script language=javascript&
&&&&&&&&&&
var a = "&%=ss()%&";
&&&&&&&&&&
&&&&&&&&&&
方法三:1、&script
language="javascript"&
&&&&&&&&&&
&&&&&&&&&&
function __doPostBack(eventTarget, eventArgument)
&&&&&&&&&&
&&&&&&&&&&&&&
var theForm =
document.Form1;&&&&
//指runat=server的form
&&&&&&&&&&&&&
theForm.__EVENTTARGET.value = eventT
&&&&&&&&&&&&&
theFrom.__EVENTARGUMENT.value = eventA
&&&&&&&&&&&&&
theForm.submit();
&&&&&&&&&&
&&&&&&&&&&
&&&&&&&&&&
&&&&&&&&&&
&input type="button" value="按钮"
方法四:&script
language="javascript"&
function SubmitKeyClick()
(event.keyCode == 13)
event.cancelBubble =
event.returnValue =
document.all.FunName.value="你要调用的函数名";
document.form[0].submit();
type="text"&
&input type="hidden" &
〈!--用来存储你要调用的函数 --〉
在.CS里有:
public Page_OnLoad()
if (!Page.IsPost())
strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";
//根据传回来的值决定调用哪个函数
switch(strFunName)
case "enter()":
enter() ; //调用该函数
case "其他":
//调用其他函数
//调用默认函数
public void enter()
//……比如计算某值
<font STYLE="Line-HeiGHT: 1.3em" COLOR="#.如何在JavaScript访问C#变量?
答案如下:
方法一:1、通过页面上隐藏域访问&input type="hidden"
runat="server"&
方法二:1、如后台定义了PUBLIC STRING
N;前台js中引用该变量的格式为'&%=n%&'或"+&%=n%&+"
方法三:1、或者你可以在服务器端变量赋值后在页面注册一段脚本
&&&&&&&&&&
"&script language='javascript'&var
temp=" + tmp + "&/script&"
&&&&&&&&&&
tmp是后台变量,然后js中可以直接访问temp获得值。
<font STYLE="Line-HeiGHT: 1.3em" COLOR="#.如何在C#中访问JavaScript的已有变量?
答案如下:
方法一:1、前台使用静态文本控件隐藏域,将js变量值写入其中;
2、后台用request["id"]来获取值;
方法二:可以用cookie或session
<font STYLE="Line-HeiGHT: 1.3em" COLOR="#.如何在C#中访问JavaScript函数?
答案如下:
c#代码中执行javaScript函数:
方法一:1、Page.RegisterStartupScript("ggg","&script&SetVisible(1);&/script&");
方法二:使用Literal类,然后
private void Button2_Click(object sender, System.EventArgs e)
str="&script
language='javascript'&";
str+="selectRange()";
str+="&/script&";
//Literal1.Visible=
Literal1.Text=
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。最近看JavaScript高级程序设计,大有收获,接下来几天写一下读书笔记。之前写了一篇的随笔,里面有个函数用来创建XmlHttpRequest对象,浏览器兼容性原因,写出的代码通过大量if判断或者try,catch语句将函数引导到正确代码处。
&script type="text/javascript"&
function createXHR(){
var xhr = null;
// Firefox, Opera 8.0+, Safari,IE7+
xhr = new XMLHttpRequest();
catch (e) {
// Internet Explorer
xhr = new ActiveXObject("Msxml2.XMLHTTP");
catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
catch (e) {
xhr = null;
每次调用这个函数的时候,都要先进行浏览器能力检查,首先检查浏览器是否支持内置的XMLHyypRequest对象,如果不支持然后检查各版本基于ActiveX的XMLHttpRequest,每次调用该函数都是这样,其实当第一次执行完后,如果浏览器支持某个特定XMLHttpRequest对象,那么下次执行的时候这种支持性并不会改变,没必要再进行一边检测,即使只有一个if语句,执行也肯定比没有要慢,如果我们可以让if语句不必每次执行,那么就可以在频繁调用的情况下提高执行速度。解决方案就是称之为惰性载入的技巧。
惰性载入表示函数执行的分支只会在函数第一次掉用的时候执行,在第一次调用过程中,该函数会被覆盖为另一个按照合适方式执行的函数,这样任何对原函数的调用就不用再经过执行的分支了。createXHR函数可以被改写为这样
function createXHR(){
var xhr=null;
if(typeof XMLHttpRequest !='undefined'){
xhr = new XMLHttpRequest();
createXHR=function(){
return new XMLHttpRequest();
xhr = new ActiveXObject("Msxml2.XMLHTTP");
createXHR=function(){
return new ActiveXObject("Msxml2.XMLHTTP");
catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
createXHR=function(){
return new ActiveXObject("Microsoft.XMLHTTP");
catch (e) {
createXHR=function(){
return null;
在这个惰性载入的createXHR中第一次执行的时候每个分支都会为createXHR重新赋值,覆盖原函数,返回xhr对象,而第二次执行的时候就会直接调用重写后的函数,这样就不必执行每个分支重新做检测了。
惰性载入函数有两个主要优点,第一是显而易见的效率问题,虽然在第一次执行的时候函数会意味赋值而执行的慢一些,但是后续的调用会因为避免的重复检测更快;第二个是要执行的适当代码只有当实际调用函数是才执行,很多JavaScript库在在加载的时候就根据浏览器不同而执行很多分支,把所有东西实现设置好,而惰性载入函数将计算延迟,不影响初始脚本的执行时间。
阅读(...) 评论()JavaScript中的函数调用的问题,没理解透彻_百度知道
JavaScript中的函数调用的问题,没理解透彻
&script language=javascript&function click(){ if (event.button==1)
alert(&#39;你按下了鼠标左键!&#39;); }
if (event.button==2)
alert(&#39;你按下了鼠标右键!&#39;); } }&#47;&#47; 通过onmousedown事件调用click()函数document.onmousedown=&&#47;script&这里的函数用用为什么是click而不是click()???()符号才是函数调用运算符啊???哪位高手能将明白点
提问者采纳
不同意一楼观点,不单只是不同的写法给注册事件匹配函数的时候,加不加括号,决定了被匹配的函数执行的时间点。以window.onload为例,如果函数加了括号那就直接先执行函数,再加载body。而不加括号,则相当于将一个函数当作变量赋值到window.onload上,并不立即加载所以加不加括号会直接影响到你要的效果是否能出来。-------------------------------补充:0分,很无力 = =
提问者评价
谢谢,这下你有分了吧。。。。。
其他类似问题
按默认排序
其他1条回答
只是两种不同的写法而已&script language=javascript&// 通过onmousedown事件调用click()函数document.onmousedown=function click(){ if (event.button==1)
alert(&#39;你按下了鼠标左键!&#39;); }
if (event.button==2)
alert(&#39;你按下了鼠标右键!&#39;); } }&/script&附注:script脚本的位置决定写法不同,JavaScript脚本 可以放在&head&表头里,像你那样写,当然可以放在即将执行的事件脚本里,也可以放置在另外的单独的文件里,建议你可以看一下《Javascript权威指南》《JavaScript高级程序设计》两书,讲得很透彻,保证你是高手了
函数调用的相关知识
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁HTML中调用多个javascript函数的问题_百度知道
HTML中调用多个javascript函数的问题
比如:我要在页面加载时(一打开)就能调用多个函数,怎么解决啊?我写了个描述时间的times()函数,还有一个opend()弹出窗口,还有几个。都需要在页面一打开都执行显示。在&body onLoad = & &&中,只能写一个函数调啊。怎么解决这个问题啊。请高手来帮忙啊!!!指点!
提问者采纳
定义一个函数 function load(){ //把你的times() opend()放这里面 times();//调用times(); opend();//调用opend();// } 然后 &body onload=&load()&&
提问者评价
都不错。随便选个了
其他类似问题
按默认排序
其他3条回答
转换一下思路可能比较好,用绑定,而不用调用,这样就可以在页面的任何地方添加一个事件,具体实现://定义绑定函数的方法function mybind(elem, _type, handle) {
if (elem.addEventListener) {
elem.addEventListener(_type, handle, false);
elem.attachEvent(&on& + _type, handle); }}//在window.onload上绑定times()等等mybind(window, &load&, times);// 在其他地方附加一些语句mybind(window, &load&, function(){// 这里写需要运行的程序});
楼上各位都不错,有点复杂,给你一句,so easy,全部都能调用window.onload =function(){ a();b();c() } a();b();c() 是你要调用的函数名,上句的作用是当window载入,依次调用a();b();c()函数,改变a,b,c的顺序,调用的顺序也相应变化。后面根据需要,可以增加d(),e().可以用下面的代码试试&script type=&text/javascript&&function a(){alert(&a&)}function b(){alert(&b&)}function c(){alert(&c&)}window.onload =function() {a();b();c()} &/script&
function addLoadEvent(func) {
var oldonload = window.
if (typeof window.onload != &#39;function&#39;) {
window.onload =
window.onload = function() {
oldonload();
}}前面代码的工作原理是将多个函数绑定在onload事件上,而不至于覆盖原来的,代码讲解:你只要在你调用函数的地方写上addLoadEvent(func);就好了。括号里的func是你要绑定函数的名称
javascript的相关知识
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 javascript构造函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信