2011-10-05 35 views
2

下面的代码部分产生在Firefox和铬Dojo:为什么会生成额外的文本框?

enter image description here

<html> 
    <title>Dojo Example</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6.0/dojo/dojo.xd.js" 
    djConfig="parseOnLoad: true"> 
    </script> 
    <script type="text/javascript"> 
    dojo.require("dojo.parser"); 
    dojo.require("dijit.form.ValidationTextBox") 
    </script> 
    <label for="firstName"> First Name: </label> 
    <input type="text" id="firstName" 
    dojoType="dijit.form.ValidationTextBox" 
    promptMessage="Enter first name:" 
    invalidMessage="First Name is required" 
    /> 
</html> 

产生与文字“X”一个额外的文本框在其上这样的结果。我不知道如何解决它,为什么会发生这种情况。任何人都可以帮忙

+0

你能在不同浏览器重现呢? –

+0

@Pekka:是的,这很奇怪 –

回答

1

除了包含要使用的主题的CSS样式表之外,还需要将有效的dijit主题添加到html文档的主体标记。

例如:

<html> 
    <head>  
     <title>Dojo Example</title> 
     <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dijit/themes/claro/claro.css"> 
     <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6.0/dojo/dojo.xd.js" 
      djConfig="parseOnLoad: true"> 
     </script> 
     <script type="text/javascript"> 
      dojo.require("dojo.parser"); 
      dojo.require("dijit.form.ValidationTextBox") 
     </script> 
    </head> 
    <body class="claro"> 
     <label for="firstName"> First Name: </label> 
     <input type="text" id="firstName" 
      dojoType="dijit.form.ValidationTextBox" 
      promptMessage="Enter first name:" 
      invalidMessage="First Name is required" 
     /> 
    </body> 
</html> 
+0

css会影响最终结果吗?那个奇怪的...... –

+0

所有的dijit项目组件都依赖于一些决定它的外观。 CSS还处理一些隐藏/显示构成一个dijit.form.ValidationTextBox的多个html元素 – BuffaloBuffalo

相关问题