+ -
当前位置:首页 → 问答吧 → 关于window.prompt确认和取消的问题

关于window.prompt确认和取消的问题

时间:2011-09-08

来源:互联网

window.prompt提示框点击取消后返回的是"",点击确定后返回的是用户输入内容。

如果想实现如下效果怎么做:
1、当用户点击确认但是没有输入时,提示用户不能输入为空。
2、当用户点击取消时,直接return掉。

因为如果不输入内容的话,点确认也是返回的"",跟点取消返回的内容相同,所以无法区分判断。
现在只能是在prompt提示框中加入了一个默认值,勉强能实现效果。请问还有没有其他好的方法能够解决此问题的?
求高手指点~~~!

作者: ray148121704   发布时间: 2011-09-08

JScript code
if (prompt("input", "") === null) {
    /* todo : cancel */
    return;
}

作者: zswang   发布时间: 2011-09-08

HTML code

<html>
 <head></head>
 <script>
   function setName(obj){
    var value = window.prompt("用户名:", "yourname");
    var username = document.getElementById("username");
    username.value = value;
   }
 </script>
 <body>
  <input type="text" id="username" readonly/>
  <input type="button" value="输入" onclick="setName(this)">
 </body>
</html>


这个lZ可以试试(这段代码不是我的..)

作者: wyx177694333   发布时间: 2011-09-08

请问===是什么意思?原来好像见过一次但是不常用忘记了。。。

作者: ray148121704   发布时间: 2011-09-08

===更严格的相等比较,包括类型

0 == false // true
0 === false // false

"" == 0 // true
"" === 0 // false

作者: zswang   发布时间: 2011-09-08

引用 1 楼 zswang 的回复:

JScript code
if (prompt("input", "") === null) {
/* todo : cancel */
return;
}


===不能解决返回值都是""的问题啊。。点确定的时候返回的跟点取消时返回的都是"",还是无法区分。。

作者: ray148121704   发布时间: 2011-09-08