2013-08-22 72 views
-2

我有2個jQuery的.click功能的一個按鈕。函數應該一個接一個地開火。第二個功能不能觸發。2 jquery .click一個按鈕的功能。消防功能一個接一個

<asp:Button ID="Button1" runat="server" Text="Save" Width="70px" /> 
// this function is fired 
$(document).ready(function() { 
    $("#<%=Button1.ClientID%>).click(function() { 
     //some code here 
     var con = confirm("message"); 
     if (con) return true; 
     else return false; 
    }); 
}); 

// in another <script> 
// this function is not getting fired 
$(document).ready(function() { 
     $("#<%=Button1.ClientID%>").click(function() { 
       var con1 = confirm("message"); 
       if (con1) { 
        return true; 
       } else { 
        return false; 
       } 
      } 
     }); 
}); 

如何既能功能大火此起彼伏?或者我怎麼能在一個函數中編寫兩個邏輯?

+0

將其更改爲調用兩組功能的1個單擊事件。 – Richard

+2

你好像在'「#<%= Button1.ClientID%>'後面缺少一個''',我沒有在我的編輯中加入它,以防原因。 –

+0

第一個「confirm()」函數是否返回true?如果你從第一個函數返回false,它可能會取消第二個函數。 – Richard

回答

1

試試這個,

<script> 
    var clientId=<%=Button1.ClientID%>; 
    $(document).ready(function() { 
     $("#"+clientId).click(function() { 
      var con1 = confirm("message"); 
      return con1; 
     }); 
    }); 
</script> 
0

的問題不在於你的功能沒有得到所謂的此起彼伏。事實上,如果您正確使用了大括號{},它們就會被調用。見下面我的代碼(最值得注意的是JS部分):

HTML:

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 
<meta charset=utf-8 /> 
<title>JS Bin</title> 
</head> 
<body> 
    <Button ID="Button1" runat="server" Text="Save" Width="70px" >CLICK</Button> 
</body> 
</html> 

JS:

$(function() { 
    $("#Button1").click(function() { 
     alert("1"); 
     var con = "message"; 
     if (con) return true; 
     else return false; 
    }); 
}); 


// this function is now getting fired 
$(function() { 
     $("#Button1").click(function() { 
       alert("2"); 
       var con1 = "message"; 
       if (con1) return true; 
       else return false; 
      }); 

}); 

看到這裏的工作示例:http://jsbin.com/IkIx/1/edit。至於平時記得run with js