JavaScript逻辑推理

时间:2014-08-23 11:17:23

标签: javascript jquery

我有一个页面a.jsp,其中包含以下元素

--a1--
--a2--
--a3--

<select onChange="cht('1');" id="a1"><option>H263</option><option>H264</option></select>

<div class="Text" onclick="cht('2');" disabled>
<img   src="http://mocii.com/uploads/2011/01/beautiful-fractal-wallpapers.jpeg"  height="100"   width="100"  /></div>
<div  id="a3" disabled>a3</div> 


function cht(index){
    var id = parseInt(index)+1;
  var e = document.getElementById("a"+id);alert("a"+id);
  e.removeAttribute("disabled");
}

如何阻止a2a3上的用户操作,直到未选择a1,如果选择a1,则打开a2,如果{选择{1}}然后打开a2, 其中a3是我的选择标记,a1是我在a2上执行某些操作时单击这些图像的图像。 a3a1之间没有关联,但a2都需要这两者。

2 个答案:

答案 0 :(得分:0)

这是一个可能的解决方案。 让我们说a1,a2和a3是按钮

<button index="1" onclick="chng-status();" id="a1">a1</button>
<button index="2" id="a2" onclick="chng-status();" disabled>a2</button>
<button index="3" id="a3" disabled>a3</button> 

现在,假设你点击了&#34; a1&#34;,然后你会做什么

<script>
    function chng-status(index){
      var e = document.getElementById("a"+index+1);
      e.removeAttribute("disabled");
    }
</script>

答案 1 :(得分:0)

你可以定义一个像这样的对象:

var clickStatus= {
     a1Clicked:false,
     a2Clicked:false,
     a3Clicked:false,
};

当click事件发生时,使用此对象将每个对象设置为true。像:

clickStatus.a1Clicked=true;

有了这个和一些IF你可以管理它。 希望它有所帮助。