2011-05-23 62 views
0

您可以编写生成/写入/写入的javascript吗?运作的JavaScript?JavaScript可以产生正常运行javascript

例如,有一个链接有一个功能绑定到它,点击时产生一个功能javascipt片段?片段可以处理完全其他的元素。

例如

链接#1(有一个产生的JavaScript的JavaScript功能)链接#2(确实,现在绝对没有)

点击链接#1(产生的JavaScript剪掉,说:“当链接#2点击文件撰写(“你好”)”

点击链接#2现在生产的‘hello’,而它没有以前一样。这可能吗?

+0

是的,你可以做到这一点。你试过了吗?发生了什么? – 2011-05-23 02:14:13

回答

0

是的,你可以动态地分配事件处理程序描述在文本中

但是,动态代码生成比听起来要困难得多,除非您只是遵循基本模式并替换某些变量。写程序的写程序一直以来都是计算机行业的一种魅力,这让functional programming,可以be donein javascript

+0

好的..我很体面与PHP和即时通讯试图获得处理的JavaScript/jQuery的。如果你有兴趣...我想要做的是显示表单输入字段与jQuery的日期选择器连接到每一个通过点击链接。每次用户单击链接时,都会弹出一个新的输入字段(附加到div)。所以我必须为每个与该ID相关的表单字段和日期选择器函数创建一个唯一的ID(使用时间戳来使其唯一)。 – David 2011-05-23 02:33:06

+0

而且我还想显示每个这些输入字段的删除链接,所以我需要动态编写一个删除特定输入字段的函数。这正在扰乱我的大脑哈哈。 – David 2011-05-23 02:33:23

0

在datepicker的onClick处理程序上创建输入/删除键,可以在创建输入时附加日期信息(或其他数据)。现在,您应该查看$.delegate()了解如何将处理程序绑定到创建的输入。 $.delegate可以将处理程序绑定到尚未创建的元素,因此创建它们时会触发处理程序。通过在输入中通过$.data()data-属性存储日期相关信息,您将拥有处理事件的情景感知处理程序。

+0

这不是jQuery。 – Ryan 2011-05-23 02:50:37

+0

......这看起来像是在回答错误的问题。 – 2011-05-23 03:14:35

+0

阅读上面的评论,他正在使用jQuery的Datepicker – Drew 2011-05-23 03:26:23

0

如果我正确理解你的问题,你可以用下面的代码做你想做的。

不知道为什么你想这样做,但。

你可以写javascript生产/写/等。运作的JavaScript?

你可以像我这样做,或通过使用eval - 尽管如许多编码者指出的那样,eval是邪恶的!

<html> 

<head> 

<script type="text/javascript"> 

function initLinks(){ 
    document.getElementById("link1").addEventListener("click", function(){ 
     document.getElementById("link2").addEventListener("click", function(){ 
      document.write("hello"); 
     }, false); 
    }, false); 
} 
</script> 


</head> 

<body onload="initLinks()"> 

<a id="link1">Link 1</a> 
<a id="link2">Link 2</a> 

</body> 

</html>