如何在点击时设置特定值? 例如:
$("input[type='button']").click(function() {
switch(this.id) {
case 'ClickButtonOne': //VARIABLE1=something; break;
case 'ClickButtonTwo': //VARIABLE1=something; break;
}
});
然后以某种方式将值打印到屏幕上。谢谢! :)
答案 0 :(得分:2)
也许可以将id设置为数字/值:
<html><head>
<script type="text/javascript">
function whichElement(e)
{
var targ;
if (!e)
{
var e=window.event;
}
if (e.target)
{
targ=e.target;
}
else if (e.srcElement)
{
targ=e.srcElement;
}
if (targ.nodeType==3) // defeat Safari bug
{
targ = targ.parentNode;
}
myVariable=targ.id;
alert("My variable is "+myVariable);
}
</script>
</head>
<body id="-1" onmousedown="whichElement(event)">
<p id="3.14">click here to set variable to 3.14</p>
<h3 id="5">click here to set variable to 5</h3>
<p id ="2">click here to set variable to 2</p>
</body></html>
其他可能性是从元素的文本/名称获取数字(值)(不要使用id)。
答案 1 :(得分:1)
$("input[type='button']").click(function() {
var variable1 = 'default value'; // or add a default in the switch
switch(this.id) {
case 'ClickButtonOne':
variable1 = 'something';
break;
case 'ClickButtonOne':
variable1 = 'something else';
break;
}
$('.the-element-you-want-to-add-it-to').html(variable1);
});
答案 2 :(得分:0)
通过从范围
中定义变量来使变量成为全局变量var someVar = '';
$(document).ready(function(){
$("input[type='button']").click(function() {
switch(this.id) {
case 'ClickButtonOne':
someVar = 'something';
break;
case 'ClickButtonTwo':
someVar='something else';
break;
}
$("#someContainer").html(someVar);
});
});
根据我的理解(来自问题),他想设置一个已在其他地方定义的变量。为此,它必须是全球性的。您还可以使用jquery(.data)将其存储在HTML元素中。
通常我所做的是创建一个包含相关数据的javascript对象。类似的东西:
var someDataContainer = {
somethingImportant : 5
};
以后我可以使用someDataContainer.somethingImportant
来引用它