我想使用触发元素id,然后将其用作字符串,以执行某些逻辑操作。
基本上
<html>
<head>
<script type="text/javascript">
//OK
function getValue(control)
{
alert(control.id);
}
function filterByIDType(ctl) {
var marker = "not set";
var ctlID = ctl.id;
alert(ctlID); //OK
//alert(ctlID.toString()); //Not working, how to use to match particular 'types'
// Not working:
try
{
if(ctlID.Match('Type1'))
{ marker ='Type1';
document.getElementByID(marker+'Lists').value = marker;
}
if(ctlID.Match('Type2'))
marker = 'Type2'
if(ctlID.Match('Type3'))
marker = 'Type3';
}
catch(err)
{
alert('Marker is still:'+marker);
}
}
</script>
</head>
<body>
<h1>My Web Page</h1>
<p id="demo">This is a paragraph.</p>
<a id="idname" onclick="getValue(this)">Click link, get id</a>
<input id="Type1Lists" value="">input type1 here:</input>
<p id="Type1Input" onclick="filterByIDType(this)">Click a paragraph with type1 ip</p>
<p id="Type2Input" onclick="filterByIDType(this)">click a paragraph with type2 ip</p>
<p id="Type3Input" onclick="filterByIDType(this)">click a paragraph with type</p>
</body>
</html>
我收到错误: Object不支持此属性或方法
答案 0 :(得分:0)
尝试
if (ctlID.match('Type1'))
// ^m, not M
答案 1 :(得分:0)
制作
var ctlID = ctl.id;
到
var ctlID = ctl.id.toString();