0
<html>
<head>
<script type="text/javascript">
window.onload = function() {
 var btn = document.getElementById("button");
 var tog = document.getElementById("toggle");
 tog.onclick = function() {
  if(btn.disabled) {
   btn.disabled = false;
  } else {
   btn.disabled = true;
  }
 };
 //btn.watch("disabled", function(prop, val, newval) { });
};
</script>
</head>
<body>
<input type="button" value="Button" id="button" />
<input type="button" value="Toggle" id="toggle" />
</body>
</html>

このコードをテストすると、[切り替え]ボタンで他のボタンが正常に有効または無効になります。

ただし、btn.watch()行のコメントを解除すると、どういうわけか常に無効なタグがtrueに設定されます。

何か案は?

4

1 に答える 1

0

watchで定義されたモニター関数は、新しい値を返す必要があるため、次のようになります。

 btn.watch("disabled", function(prop, val, newval) { return newval; });

編集:スクリプトの機能に影響を与えずにモニターメソッドを定義したいと思います。そのため、disabledプロパティの新しい値を返すように注意する必要があります。

于 2010-12-29T01:49:56.920 に答える