Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用特定下拉值上的按钮_Javascript_Html_Css_Dojo - Fatal编程技术网

Javascript 禁用特定下拉值上的按钮

Javascript 禁用特定下拉值上的按钮,javascript,html,css,dojo,Javascript,Html,Css,Dojo,尝试解决dojo的一个小问题,如果myCode的值等于selCode(从下拉列表中选择的值) 该按钮需要禁用。我哪里出了问题 在下面选择 AA BB 科科斯群岛 DD 好吧,我对Dojo一无所知,但可以肯定的是,您正在尝试使用jQuery方法.val()和.attr(),除非Dojo有相同的方法。(我找不到他们的文档。) 放弃本机API的库代码的工作方式如下: var myCode="CC"; dojo.addOnLoad( function() { dojo.connect

尝试解决dojo的一个小问题,如果myCode的值等于selCode(从下拉列表中选择的值) 该按钮需要禁用。我哪里出了问题



在下面选择
AA
BB
科科斯群岛
DD

好吧,我对Dojo一无所知,但可以肯定的是,您正在尝试使用jQuery方法
.val()
.attr()
,除非Dojo有相同的方法。(我找不到他们的文档。)

放弃本机API的库代码的工作方式如下:

var myCode="CC"; 

dojo.addOnLoad( function() {
     dojo.connect(dojo.byId('#codes'), "onchange", function(evt) {
         var selCode = evt.target.options[evt.target.selectedIndex].value;
         if(selCode == myCode){
             document.getElementById('submit').disabled = true;
         }
         dojo.stopEvent(evt);
     });
 });
示例:


编辑:根据下面的注释,您希望它根据匹配的选择进行切换

var myCode = "CC";

dojo.addOnLoad(function() {
    dojo.connect(dojo.byId('#codes'), "onchange", function(evt) {
        var selCode = evt.target.options[evt.target.selectedIndex].value;
        document.getElementById('submit').disabled = (selCode == myCode);
        dojo.stopEvent(evt);
    });
});
示例:


现在
.disabled
属性将设置为
selCode==myCode
的结果,因此当
true
时,它将被禁用。当
false
启用时。

我对Dojo一无所知,但我确信您正在尝试使用jQuery方法
.val()
.attr()
,除非Dojo有相同的方法。(我找不到他们的文档。)

放弃本机API的库代码的工作方式如下:

var myCode="CC"; 

dojo.addOnLoad( function() {
     dojo.connect(dojo.byId('#codes'), "onchange", function(evt) {
         var selCode = evt.target.options[evt.target.selectedIndex].value;
         if(selCode == myCode){
             document.getElementById('submit').disabled = true;
         }
         dojo.stopEvent(evt);
     });
 });
示例:


编辑:根据下面的注释,您希望它根据匹配的选择进行切换

var myCode = "CC";

dojo.addOnLoad(function() {
    dojo.connect(dojo.byId('#codes'), "onchange", function(evt) {
        var selCode = evt.target.options[evt.target.selectedIndex].value;
        document.getElementById('submit').disabled = (selCode == myCode);
        dojo.stopEvent(evt);
    });
});
示例:

现在
.disabled
属性将设置为
selCode==myCode
的结果,因此当
true
时,它将被禁用。当
false
时,启用。

两个问题: 1.Dojo没有像那样使用CSS选择器。不要使用#。 2.attr函数接受三个参数(当执行您想要执行的操作时):id/dojoObj、attr name、attr value

var myCode="CC";    
dojo.addOnLoad( function() {
   dojo.connect(dojo.byId('codes'), "onchange", function(evt) {
      if(this.value == myCode){
         dojo.attr('submit', 'disabled', 'disabled');
      }
      dojo.stopEvent(evt);
   });
});
两个问题: 1.Dojo没有像那样使用CSS选择器。不要使用#。 2.attr函数接受三个参数(当执行您想要执行的操作时):id/dojoObj、attr name、attr value

var myCode="CC";    
dojo.addOnLoad( function() {
   dojo.connect(dojo.byId('codes'), "onchange", function(evt) {
      if(this.value == myCode){
         dojo.attr('submit', 'disabled', 'disabled');
      }
      dojo.stopEvent(evt);
   });
});

谢谢你,先生。。我就要这个了。一个问题是,即使下拉值被更改回某个值,它也会使按钮保持禁用状态else@t0mcat:这是因为它不知道您要将其更改回。我会更新的。谢谢你,先生。。我就要这个了。一个问题是,即使下拉值被更改回某个值,它也会使按钮保持禁用状态else@t0mcat:这是因为它不知道您要将其更改回。我会更新的。谢谢乔希,我以前没看到你的答案。我曾与jQuery合作过。。因此CSS选择器的习惯是:)+1我对Dojo一无所知,所以我给出了一个更自然的答案。这可能更正确,因为原始选择器似乎返回的是
窗口
,而不是
选择
元素。不用担心。我提交有点慢。与其他所有框架相比,我更喜欢jQuery。我的Dojo经验相当有限。你在维护遗留应用程序方面学到的东西…Josh,一个问题。函数是否必须在addOnLoad下运行?如何独立编写同一个函数?我不太确定你在问什么,但基本上答案是肯定的,大多数情况下。将函数传递给addOnLoad将导致在页面加载时执行该函数。因此,如果要将函数连接到元素上的事件,几乎总是希望在onload期间发生这种情况。它基本上类似于jQuery在ready上的文档。谢谢Josh,我以前没有看到你的答案。我曾与jQuery合作过。。因此CSS选择器的习惯是:)+1我对Dojo一无所知,所以我给出了一个更自然的答案。这可能更正确,因为原始选择器似乎返回的是
窗口
,而不是
选择
元素。不用担心。我提交有点慢。与其他所有框架相比,我更喜欢jQuery。我的Dojo经验相当有限。你在维护遗留应用程序方面学到的东西…Josh,一个问题。函数是否必须在addOnLoad下运行?如何独立编写同一个函数?我不太确定你在问什么,但基本上答案是肯定的,大多数情况下。将函数传递给addOnLoad将导致在页面加载时执行该函数。因此,如果要将函数连接到元素上的事件,几乎总是希望在onload期间发生这种情况。它基本上类似于jQuery在ready上的文档。