2014-12-08 77 views
0

我有这个接口:
enter image description here
当“再加一条”按钮被点击,我将不得不添加另一个界面,看起来一样的这一个,使整个界面会是这个样子:
enter image description here
我的onfocus为textarea的属性,以清除其内容的重点的时候,它是工作prefectly,这是它的代码:新textarea的聚焦状态不工作

<textarea name="educationDescription1" id="educationDescription1" rows="5" cols="33" onfocus="clearContents(this);">Describe your studying experience in a couple of sentences.</textarea> 

现在我在创建textarea时也遇到同样的问题,尽管我使用了相同的语法!这是用于创建新文本区域的代码:

var node6 = document.createElement("textarea"); 
node6.rows="5"; 
node6.cols="33"; 
node6.onfocus="clearContents(this);"; 
node6.value="Describe your working experience in a couple of sentences."; 
node6.name="experienceDescription"+experiences; 
node6.id="experienceDescription"+experiences; 

任何想法可能是什么问题? 感谢

回答

1

node6.onfocus,onfocus需要函数引用。你正在分配一个字符串。它应该是这样的,

node6.onfocus=function(){clearContents(this);}; 

或者你可以使用addeventListner功能

node6.addEventListener('onfocus',function(){clearContents(this);}); 

或者,如果你想添加的onfocus到HTML你必须创建一个新的属性,并将其设置是这样的。

var attr = document.createAttribute('onfocus'); 
attr.value="clearContents(this)"; 
node6.setAttributeNode(attr); 
1

此:

node6.onfocus="clearContents(this);"; 

应该由这个来代替:

node6.onfocus=function(){clearContents(this);}; 
1

我猜你可能想使用placeholder属性,而不是onfocus。 如果您使用onfocus,即使在用户输入有效数据后,每当用户关注它时都会清除textarea。

设置placeholder使用jQuery的代码可能是这样的:

var node6 = $("<textarea></textarea>"); 
... 
node6.attr('placeholder','Describe your working ...'); 

这里是小提琴。 http://jsfiddle.net/naokiota/j687tg80/2/

希望这会有所帮助。