使用jquery使链接按钮禁用页面加载

时间:2012-12-13 10:25:59

标签: jquery ruby-on-rails

我有一个带有图片标记的link_to_function。我想禁用它(使其图像模糊n禁用点击事件)以进行页面加载。但是单击了名为“按钮1”的其他按钮,然后才启用它。我怎么能完成它?

带链接的图像的Css是

.img  
{
opacity:0.4;
filter:alpha(opacity=40); 
} 

观看是......

<%i = 1%>
<div id = "file_<%= i %>" class = "file">
<%= link_to_function image_tag("play_images.png",:width => 30, :height => 30,:align => 'left', :title => 'Play', :id => "img_play#{i}"), :id => "play_#{i}"%>
&nbsp;&nbsp;<%= link_to_function image_tag("stop_images.png",:width => 30, :height => 30,:align => 'left', :title => 'Stop', :id => "img_stop#{i}",:class => "img"), :id => "stop_#{i}"%>
<%= link_to_function image_tag("fast_fwd.jpeg",:width => 30, :height => 30, :title => 'Fast farword', :id => "img_ff#{i}", :class => "img"), :disabled => 'true',:id => "ff_#{i}"%>

<%= link_to_function image_tag("images.jpeg",:align => 'right'), :id => "close_#{i}"%>
 <div id = "request_<%= i%>" class = "request">
   </div>
 </div>
 <%i = i + 1%>

现在,这里我想要的是最初2个带有“img”类的图像按钮将被模糊并禁用,当我点击ID为“play_#”的按钮时,带有“img”类的按钮将删除它们的类他们将启用它们。那么如何让它们在加载时禁用并在单击播放按钮时启用。我的jquery是......

   function set_file(id,time,user,node,activity)
    {
     var filename = "";
       filename = user+"_"+node+"_"+activity+"_"+time;

        jQuery("#log_"+id).ready(function() {
        jQuery("#file_"+id).dialog({modal: true, resizable: false, draggable: false,
                 title: "File Content", width: 520,

       });
        jQuery("#play_"+id).click(function(){
          jQuery("#img_stop"+id).removeClass();
          jQuery("#img_ff"+id).removeClass();
                    text="content of text here";
                    delay=500;
                    currentChar=1;
                    destination="[not defined]";
       jQuery.get('/requests/download_log/?filename=' + filename, function(data) {
    });

});
jQuery("#stop_"+id).click(function(){
    jQuery("#img_ff"+id).addClass('img');
    jQuery("#img_stop"+id).addClass('img');
   alert("Stop");
  });
   jQuery("#ff_"+id).click(function(){
  alert("Fast Forward");
  });
 }

2 个答案:

答案 0 :(得分:0)

请更准确地描述您的问题,例如:发布一些代码。

也许你会尝试做类似的事情:

jQuery(document).ready(function() {
    var $button1 = jQuery('#button1');
    var $button2 = jQuery('#button2').attr('disabled', 'disabled');

    $button1.click(function() {
        if ($button2.is(':disabled')) {
            $button2.removeAttr('disabled');
        } else {
            $button2.attr('disabled', 'disabled');
        }
    });

    $button2.click(function() {
        alert('button2 - click');
    });
});​

在此处尝试:http://jsfiddle.net/f9F9z/2/

答案 1 :(得分:0)

如果我理解正确,你可以在这里找到几种可能性。最常见的一种是最初不使用css display:none来显示按钮。您可以在文档就绪时将显示设置为阻止或删除css。如果单击“按钮1”,则可以使用相同的功能。

如果还有其他方法,您应该发布一些代码,以便我们可以看看是否有更合适的方法。