日期:2014-05-17  浏览次数:20431 次

showModalDialog返回值只能是数字,怎样才能支持返回中文?
我要实现的效果就是点击部门选择按钮,弹出窗口显示部门树,点击一个部门名,就把部门名返回给主窗口显示,现在只能返回ID号,返回中文的部门名就会提示那个部门名未定义。那位大师帮忙解决下呀,先谢了。

点击按钮时弹出新窗口
function showProType() {
    var re = showModalDialog("../ygsq/proType.aspx", "", "dialogWidth=350px;dialogHeight=400px");
    var obj = window.event.srcElement;
    var td = obj.parentNode;
    var txts = td.getElementsByTagName('input');
    if (re == null || re == "") {

        if (txts[0].value == "" || txts[0].value == null) {
            txts[0].value = "请选择";

        }
    }
    else {
        txts[0].value = re;
    }
}
新窗口目录树加载子菜单
        private void CreateSubTreeView(TreeNode n, DataView dv)
        {
            foreach (DataRowView d in dv)
            {
                TreeNode cn = new TreeNode(d["TypeName"].ToString(), d["TypeID"].ToString());
                cn.NavigateUrl = "javascript:ReturnValue(" + d["TypeID"].ToString() + ");"; 此处如果用d["TypeID]能返回数字,但用TypeName返回中文时就会出错,说那几个中文未定义。
                n.ChildNodes.Add(cn);
                DataView sdv = new DataView(dt, "ParentTypeID='" + d["TypeID"] + "'", "TypeID", DataViewRowState.CurrentRows);
                if (sdv.Count > 0)
                {
                    CreateSubTreeView(cn, sdv);
                }

            }
        }

    }