是否可以这样调用prompt:
prompt('Enter your text here');而不是:
prompt('Enter your text here', '');例如,不向它传递建议的输入?
发布于 2011-12-01 19:21:27
是的,没问题。
prompt方法的第二个参数是可选的(参见"window.prompt on MDN")。根据ECMAScript规范(ECMA-262,第4.3.9节),将undefined值赋予没有赋值的变量。在prompt方法中,将第二个参数保留为undefined或向其传递空字符串并不重要:两者都会导致在提示符中使用空字符串作为默认值。
如果您想知道为什么这些信息在W3C DOM等DOM标准上不可用,答案是它是浏览器通常支持的非标准方法(属于所谓的"DOM Level 0“规范的一部分)。但是,即将发布的HTML5可能会将prompt (window.prompt)定义为标准方法(请参阅"6.4 User prompts")。
发布于 2011-12-01 19:21:17
在documentation on MDC中,第二个参数被列为可选参数。
value 是包含文本输入字段中显示的默认值的字符串。它是一个可选参数。
发布于 2011-12-01 19:30:58
是的,第二个参数是可选的according to the HTML5 spec (我们目前拥有的最接近prompt和alert之类的规范):
当调用prompt(message, default)方法时,它必须释放存储互斥锁,向用户显示给定的消息,并要求用户要么使用字符串值响应,要么中止。然后,在方法等待用户响应时,用户代理必须暂停。第二个参数是可选的。如果第二个参数(default)存在,则必须将响应默认设置为默认给定值。如果用户中止,则该方法必须返回null;否则,该方法必须返回用户响应的字符串。
(我的重点)
https://stackoverflow.com/questions/8340488
复制相似问题