您现在的位置是:首页 > 电脑技术查询 > web开发

层数据设置修改有关问题

编辑:chaxungu时间:2022-10-02 23:21:49分类:web开发

层数据设置修改问题

function createLayer()
{
//动态的创建一个层
var str=document.createElement( "div "); //创建的元素
..............
str.onclick = ClickLayer;

function ClickLayer()
{
....
....
var StartId = ClickLayer.StartId;

}

ClickLayer.StartId = CurrTdId;
ClickLayer.EndId = EndId;

}

我利用这个函数创建层,我想问一下这个层对应的 ClickLayer.StartId用代码可以重新赋值吗?如何赋值?


------解决方案--------------------
ClickLayer.StartId 这个 StartId 只是函数数 ClickLayer 的一个静态属性,是可读写的
不过你的函数ClickLayer已经包含在另一个函数 cteateLayer 里了,所以不可以直接赋值了,所以要在 createLayer 函数里作一个与外沟通的接口:

<SCRIPT LANGUAGE= "JavaScript ">
<!--
function createLayer()
{
//动态的创建一个层

function ClickLayer()
{
//....
//....
var StartId = ClickLayer.StartId;

}

ClickLayer.StartId = "132 "//CurrTdId;
ClickLayer.EndId = "465 "//EndId;
window.getClickLayer = function(){return ClickLayer}
}

createLayer();

var CL = getClickLayer();
alert(CL.StartId);

CL.StartId = "789 "
alert(CL.StartId);

//-->
</SCRIPT>