【问题标题】:applying a var to an if statement jquery将 var 应用于 if 语句 jquery
【发布时间】:2010-06-18 00:23:02
【问题描述】:

如果满足条件,则需要将 var 应用于语句,此语法不会引发错误但无法正常工作。

<script type="text/javascript">
$(document).ready(function(){
  var action_is_post = false;
      //stuff here
    $(this).ready(function () {
        if ($("#stepDesc0").is(".current")) {
        action_is_post = true;     
        }
    });
  //stuff here
</script>

我应该使用.ready以外的东西吗?我什至需要$(this).ready(function ()... 部分吗?当#stepDesc0 具有current 类时,我需要它来应用var

$(文档).ready(函数(){ var action_is_post = 假; $("form").submit(function () { action_is_post = 真; }); if ($("#stepDesc0").is(".current")) { var action_is_post = true; } window.onbeforeunload = 确认退出; 函数确认退出() { 如果(!action_is_post) return '使用浏览器返回、刷新或关闭按钮将导致您丢失所有表单数据。请使用表格上的“下一步”和“返回”按钮。'; } });

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:
    <script type="text/javascript">
      $(document).ready(function(){
        var action_is_post=$("#stepDesc0").is(".current");
      });
    </script>
    

    如果您希望在 $(document).ready(function(){... 之外可以访问该变量,那么您需要在语句之外声明它,如下所示:

    <script type="text/javascript">
      var action_is_post;
    
      $(document).ready(function(){
        action_is_post=$("#stepDesc0").is(".current");
      });
    </script>
    

    HTML(为了测试它):

    <a href="javascript:alert(action_is_post);">Show value</a>
    

    【讨论】:

    • 应该已经发布了所有的代码。它与表单向导有关,我已经禁用了提交功能的onbeforeunload,现在我需要在向导的第一步禁用它。
    【解决方案2】:
    $(function() {
        var actionIsPost = $('#stepDesc0').is('.current'); 
        alert( actionIsPost );
    });
    

    如果您要将current 类添加到event 上的#stepDesc0,则将.is 签入事件处理程序中。

    【讨论】:

      猜你喜欢
      • 2012-11-21
      • 1970-01-01
      • 1970-01-01
      • 2010-11-21
      • 2015-03-28
      • 2018-05-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多