点击设置变量值? +显示值?

时间:2011-08-20 14:59:33

标签: jquery

如何在点击时设置特定值? 例如:

 $("input[type='button']").click(function() {
   switch(this.id) {
     case 'ClickButtonOne': //VARIABLE1=something; break;
     case 'ClickButtonTwo': //VARIABLE1=something; break;
   }
 });

然后以某种方式将值打印到屏幕上。谢谢! :)

3 个答案:

答案 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

来引用它