如何将JavaScript变量用作XHTML属性值?

我试过了:
<!--...-->
<script type="text/javascript">
  var myVar = "some string";
</script>
<!--...-->
<input name="&{myVar};" ... />
<!--...-->
但是使用FireFox,名称设置为文字字符串:“&amp; {myVar};”而不是myVar的值... UDPATE:我认为这称为JavaScript实体并且很长时间没有得到支持 - 但是如果可以直接在事件中包含JavaScript(我意识到属性不是事件,因此JavaScript可能未被评估),必须有办法。 ?!它比硬编码的价格好得多,因为它使用了很多其他的...     
已邀请:
var myInput = document.createElement('input');
myInput.setAttribute('name', myVar);

someContainElement.appendChild(myInput);
    
我担心你必须使用Javascript来操纵html元素。 您可以使用jQuery来简化这一过程:
<script src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<input id="myInput" .../>
<script>
    var myVar = "value";
    $("#myInput").attr("name", myVar);
</script>
    
这是你需要做的。 首先,再也不要从Java站点读取javascript教程。完全不同的怪物,加上你引用的网站上的教程是可怕的。 其次,获取Javascript好的零件副本,http://www.amazon.com/dp/0596517742/ 这本书可能是有史以来关于语言本身的最有用的书(在我看来)。它没有说任何关于处理DOM API的事情。 我鼓励你在深入jQuery之类的javascript库之前先学习语言。它会尽快给你带来好处而不是以后。 一旦你至少熟悉使用javascript作为语言的正确方法,就开始把时间投入到一个或另一个库中。 jQuery可能是最常用,最受欢迎,最善良的库。它将使您更容易处理跨浏览器废话。     
菲尔和Xenoflex的方式都是更好的方式。他们实际上是以不同的方式做同样的事情,一个使用jQuery和另一个纯Javascript。 亚历克斯也会工作,但后来所有东西都是硬编码的,而且对未来的变化不太灵活。 Alex打开答案的方式可以打印字符串或将其分配给要附加到javascript对象的变量。 我认为最接近你要找的是:
<script type="text/javascript">
  var myVar = "some string";
</script>
...
<script type="text/javascript">
  document.write('<input name="' + myVar + '" ... />')
</script>
但正如我所说,你应该采取前两种方法之一。     

要回复问题请先登录注册