添加新功能后jQuery破解功能

时间:2010-04-26 09:21:26

标签: php jquery html css

这里有什么问题?警报功能正常工作,直到我将新功能添加到它。

我做错了什么吗?它只是不再发出警报。

<input value="1"  type="checkbox" name="salgsvilkar" id="checkbox2"  style="float:left;"
        />

    {literal}
             <script src="http://code.jquery.com/jquery-latest.js"></script>
                <script type="text/javascript">
    $(function() {
       //checkbox
       $("#scrollwrap").click(function(){
        $("#scrollwrap").toggleClass('highlight');
        });​
    });

    $(function(){
       //button
       $("#fullfor_btn").click(function(e){
           if(!$("#checkbox2").is(':checked') == false)
           {
               alert("Please accept the terms of sale."); 
               e.preventDefault();
           }
       });
     });
    </script>
      {/literal}


<button type="submit" class="submit" name="{$method}" id="fullfor_btn" title="Fullfør bestillingen nå" value="">&nbsp;</button>

4 个答案:

答案 0 :(得分:2)

而不是:

if(!$("#checkbox2").is(':checked') == false) {

为什么不使用更具可读性:

if($("#checkbox2").is(':checked')) {

编辑:如果您的目的是在选中复选框时触发警报:

if(!$("#checkbox2").is(':checked')) {

答案 1 :(得分:1)

你的逻辑可能不是你想要的,正如karim79所说的那样。

if(!$("#checkbox2").is(':checked') == false)

功能相同

if($("#checkbox2").is(':checked') == true)

所以只有在选中复选框时才会触发警报。

答案 2 :(得分:0)

您可以将所有代码放在示例中的相同$(function(){code})中,将文档设置为两次

 $(function() {
   //checkbox
   $("#scrollwrap").click(function(){
    $("#scrollwrap").toggleClass('highlight');
   });​

   //button
   $("#fullfor_btn").click(function(e){
       if($("#checkbox2").is(':checked'))
       {
           alert("Please accept the terms of sale."); 
           e.preventDefault();
       }
   });
 });

答案 3 :(得分:0)

适合我。

虽然在选中复选框时触发警报似乎有点奇怪,而不是在没有复制时触发警报。