使用变量来定义元素

时间:2014-10-07 11:49:39

标签: javascript html forms

我的函数使用了两个我在input-tag

中定义的变量
function insert(aTag, eTag) {
 var input = document.forms['form'].elements['textarea'];
 input.focus();
...
}

...

<input type="button" name="bold" value="bold" onClick="insert('<b>', '</b>')">

该函数将aTag和eTag放在textarea中的选定部分周围。 由于我想在同一形式的其他textareas中使用此函数,我尝试在此函数中使用另一个变量。这不幸的是不行。

我尝试了很多变种。关于这里的概念:

function insert(aTag, eTag, selectInput) {
 var input = document.forms['form'].elements[selectInput];

...

<input type="button" name="bold" value="bold" onClick="insert('<b>', '</b>', 'thistextarea')">

1 个答案:

答案 0 :(得分:0)

在onClick处理程序中,this引用被单击的对象。所以你可以这样做:

<input type="button" name="bold" value="bold" onClick="insert('<b>', '</b>', this)">

该函数将接收对象而无需从任何地方重新选择它:

function insert(aTag, eTag, input) {
    input.focus();
    ...
}

附注:不显眼的事件处理程序优于内联。