Javascript unescape()函数返回什么?

Javascript unescape()函数返回什么?,javascript,Javascript,我必须在if-else语句中使用unescape()函数。在我的网站中,我有两个页面,一个页面带有用户填写的表单,第二个页面必须通过unescape函数从填写的表单中获取信息。我需要if-else语句,因为在表单中我放置了两个单选按钮,每个按钮添加了具有不同ID和名称的不同文本区域,所以我想在第二页检查填充了哪些文本字段。(所有字段都是通过单击单选按钮创建的,该按钮启动javascript函数,因此在下一页中,我必须检查字段是否已创建,而不仅仅是检查它是否为未填充的文本字段)。 这对我来说有点难

我必须在if-else语句中使用unescape()函数。在我的网站中,我有两个页面,一个页面带有用户填写的表单,第二个页面必须通过unescape函数从填写的表单中获取信息。我需要if-else语句,因为在表单中我放置了两个单选按钮,每个按钮添加了具有不同ID和名称的不同文本区域,所以我想在第二页检查填充了哪些文本字段。(所有字段都是通过单击单选按钮创建的,该按钮启动javascript函数,因此在下一页中,我必须检查字段是否已创建,而不仅仅是检查它是否为未填充的文本字段)。 这对我来说有点难以解释,所以请检查代码。在代码中,您将看到params[“placeName”]等等,例如,placeName和所有其他名称一样,是上一页中的文本字段名。 所以问题是-如果我作为参数插入的组件名确实存在于上一页中,unescape函数将返回什么

    <script type="text/javascript">
            function getParams() {
                var idx = document.URL.indexOf('?');
                var params = new Array();
                if (idx != -1) {
                    var pairs = document.URL.substring(idx + 1, document.URL.length).split('&');
                    for (var i = 0; i < pairs.length; i++) {
                        nameVal = pairs[i].split('=');
                        params[nameVal[0]] = nameVal[1];
                    }
                }
                return params;
            }
            params = getParams();
//from here it is what I want to do (I don't know if this condition in the if statement is correct, this is what I ask)
            // if (unescape(params["placeName"]) == false) {
       //    }
          //  else {
                var place = unescape(params["placeName"]);
                var country = unescape(params["country"]);
                var city = unescape(params["city"]);
                var address = unescape(params["address"]);
                var type = unescape(params["type"]);
                var rate = unescape(params["rate"]);
         //   }
        </script>

函数getParams(){
var idx=document.URL.indexOf(“?”);
var params=新数组();
如果(idx!=-1){
var pairs=document.URL.substring(idx+1,document.URL.length).split('&');
对于(变量i=0;i

如果我可以检查选中了哪个单选按钮,
undecode
函数返回一个解码字符串(如其名称所示),它也可以工作。如果您输入了一个未定义的值,可能会因为定义不明确而导致错误。如果要检查元素是否已创建,则可以使用

if (params.placeName !== undefined) {
    // It was created
}
相反

另外,如果要检查选中了哪个单选按钮,请使用

if (document.getElementById('foo').checked) {
    // Radio button with id 'foo' was checked
} else if (document.getElementById('bar').checked) {
    // Radio button with id 'bar' was checked
} else if
...

如果
params[“something”]
不存在,您将询问
unescape(params[“something”])
将返回什么。答案是
未定义
。因此,您需要检查与“未定义”的等价性。意思是:
if(unescape(params[“placeName”])=“undefined”)
(在本例中,params[“placeName”]不存在(未创建)。

unescape()
函数只返回一个字符串-它与如何进入页面无关。它只是解码URI/URL语法中使用的编码方案。我再次编辑:)单选按钮呢?我能知道哪个按钮被选中了吗?