如何在没有按钮点击的情况下调用javascript函数?

时间:2014-03-15 10:06:08

标签: javascript

我看过一些页面,我们可以在textarea中输入,相应地显示输出 没有按钮点击,请在此处查看示例http://ntools.infoexpo.in/p/html-to-xml-encoder_4042.html

如何在以下代码中应用此类型? HTML:

<textarea  id="source"  placeholder="Text Entry."></textarea>
<p id="result"> </p>

的Javascript

function myFunction()
{
var str = document.getElementById('source').value;

var len = str.length;
    document.getElementById("result").innerHTML="<textarea>"+len+"</textarea>";

}

6 个答案:

答案 0 :(得分:3)

如果您想在加载页面时调用,请尝试使用

<body onLoad="yourFunctionName();">

答案 1 :(得分:1)

由于跨浏览器问题,我建议您使用addEventremoveEvent函数方法。

addEvent函数可以在元素上添加事件,而removeEvent删除它们

if ( document.addEventListener ) { // if addEventListener provided
    this.addEvent = function(elem, type, fn) {
        elem.addEventListener(type, fn, false);
        return fn;
    };

    this.removeEvent = function(elem, type, fn) {
        elem.removeEventListener(type, fn, false);
    };
} else if ( document.attachEvent ) { // if attachEvent provided
    this.addEvent = function(elem, type, fn) {
        var bound = function() {
            return fn.apply(elem, arguments);
        };
        elem.attachEvent("on" + type, bound);
        return bound;
    };

    this.removeEvent = function (elem, type, fn) {
        elem.detachEvent("on" + type, fn);
    };
}

例如,如果您有 HTML

<textarea  id="source"  placeholder="Text Entry."></textarea>
<textarea  id="result"  placeholder="Text Entry." disabled="disabled"></textarea>

<强>的JavaScript

addEvent(document.getElementById("source"),"keydown",function(){ // event will occur on keyup
    document.getElementById("result").innerHTML = this.value; // this refers to textarea element
});

JSFiddle

PS。 查看 attachEvent addEventListener 方法

答案 2 :(得分:0)

使用onchange事件:

object.onchange=function(){SomeJavaScriptCode};

答案 3 :(得分:0)

<textarea cols="40" onchange="do_encode(this)" onkeyup="do_encode(this)" ...>

每次用户输入/粘贴任何内容都会触发onchangeonkeyup事件。

events reference on MDN的完整列表。

答案 4 :(得分:0)

我建议您使用onchange事件,因此每次用户对文本字段进行一些更改时,都会触发该功能。

HTML将是这样的

<textarea id="source" onchange="myFunction();" placeholder="Text Entry."></textarea>
<p id="result"> </p>

JavaScript代码

function myFunction() {
    var str = document.getElementById('source').value;

    var len = str.length;
    document.getElementById("result").innerHTML="<textarea>"+len+"</textarea>";

}

答案 5 :(得分:0)

document.getElementById('source').onchange(function() {
     // Write your code here . It will execute when your changes the text in textarea

})

浏览链接 http://www.w3schools.com/jsref/event_onchange.asp