使用Dojo设置<span>元素的值/文本

Rah*_*sai 3 javascript dojo

我正在开发一个秒表应用程序,试图学习Dojo Toolkit.所以,首先,我需要将小时,分钟,秒和毫秒设置为0.

我试过了:

dojo.byId("hours").value = "00";
Run Code Online (Sandbox Code Playgroud)

还尝试过:

domAttr.set("hours", 00);
Run Code Online (Sandbox Code Playgroud)

它没有用.在控制台中,抛出以下错误:

GET http://jobs.jsfiddle.net/random.js?callback=Request.JSONP.request_map.request_0 500 (Internal Server Error) moo-clientcide-1.3.js?jobofferinsidebar:3146
Run Code Online (Sandbox Code Playgroud)

到目前为止,这是我的小提琴.

请帮忙!

g00*_*00b 7

嗯,那是因为value仅在使用表单字段时使用.如果要替换DOM节点的实际内容,请使用innerHTMLtextContent替代.例如:

dojo.byId("hours").innerHTML = "00";
dojo.byId("hours").textContent = "00";
Run Code Online (Sandbox Code Playgroud)

要么

domAttr.set("hours", "innerHTML", "00");
domAttr.set("hours", "textContent", "00");
Run Code Online (Sandbox Code Playgroud)

innerHTML和之间的区别在于textContent后者只允许文本内容(如属性所说),同时innerHTML也允许输入HTML.如果您不信任输入,那么您肯定应该使用textContent.

请注意:您需要在引号周围加上引号,00否则它将被解释为数值,这意味着在0输出时会跳过第一个.

我也改变了你的JSFiddle.