2010-09-01 190 views
1

我的网站有Javascript功能。我不太了解Javascript,但我想修改它。Javascript:根据其他下拉菜单禁用下拉菜单

本节根据前两项加载第三个下拉框。

我想修改它以禁用第三个,如果第二个下拉框locatie的值是util

jQuery(function() { 
    jQuery("#util, #loc").change(function() { 
    var locatie = jQuery("#loc").val(); 
    var utilitate = jQuery("#util").val(); 

    if ((locatie!= '---') && (utilitate!='---')) 

     jQuery.getJSON("index.php?option=com_calculator&opt=json_contor&format=raw",{ locatie: locatie, utilitate: utilitate }, function (data) { 
       var html = ""; 

       html += "<option name=den_contor value ='contor' >Alege Contorul</option>"; 
       if (data.success == 'ok') 
       for (var i in data.val) 
        html += "<option name=den_contor value ='"+ i+"' >" + data.val[i]+ " </option>"; 
       jQuery("#den_contor").html(html)  

     }) 

    }) 
    });` 

感谢, 塞巴斯蒂安

+0

也许开始投票。你已经接受了一些答案,所以你已经清楚地发现它们有用。 – 2010-09-01 08:21:24

+1

“Javascript问题”是一个相当无益的问题标题。 – TRiG 2010-09-01 08:54:55

+0

@TRIG同意。我不确定我的提案是否更好,但:S – jensgram 2010-09-01 08:58:10

回答

1

这应该为你工作:

jQuery(function() { 
    jQuery("#util, #loc").change(function() { 
    var locatie = jQuery("#loc").val(); 
    var utilitate = jQuery("#util").val(); 

    if ((locatie!= '---') && (utilitate!='---')) 

     jQuery.getJSON("index.php?option=com_calculator&opt=json_contor&format=raw",{ locatie: locatie, utilitate: utilitate }, function (data) { 
       var html = ""; 

       html += "<option name=den_contor value ='contor' >Alege Contorul</option>"; 
       if (data.success == 'ok') 
       for (var i in data.val) { 
        if (i != 'locatie' && data.val[i] != 'util') { 
         html += "<option name=den_contor value ='"+ i+"' >" + data.val[i]+ " </option>"; 
        } 
       } 
       jQuery("#den_contor").html(html)  

     }) 

    }) 
    }); 

我补充说,if (i != 'locatie'开始进行检查,确保您的看行locatie item并且值为而不是util。如果这两个都是真的(即不是locatie而不是util),那么我们显示第三个下拉菜单。

+0

感谢Blair的回复。它的工作原理,但不像我想要它的工作。在第二个下拉框中,我有A,B,C,D。如果用户选择A,则不需要第三个框,所以我想禁用该框(没有元素,甚至不显示)或更改出现在---或类似的东西中的文字。如果选择B,C或D以添加“Alege contorul”文本中没有值的第一个元素。 – sebastian 2010-09-01 09:10:40

+0

啊,好的。我已经更新了代码。我以为你想要它被禁用,而不是删除。 – 2010-09-01 10:26:58