【问题标题】:Can't seem to store val into var to be called back later似乎无法将 val 存储到 var 中以便稍后回调
【发布时间】:2012-08-24 11:40:18
【问题描述】:

我需要你的帮助,

如何修改下面的代码,以便在选择日期时将所选日期存储到 (var z) 中,然后可以稍后回调其值。我似乎无法弄清楚这一点,它应该很简单,而且是肉眼可见的。我做错了什么?

<html>

<head>

<!-- LOAD JQUERY LIBRARY: -->  
    <link   href="jq/jquery-ui.css"         type="text/css" rel="stylesheet" />
    <script src="jq/jquery.min.js"          type="text/javascript"> </script>
    <script src="jq/jquery-ui.min.js"       type="text/javascript"> </script>

<script type="text/javascript">
var z

window.onload = function() {


                $('#dd').dialog({ 
                                    autoOpen:   true,
                                    modal:      true,
                                    overlay:    { opacity: 0.5, background: 'black'},
                                    title:      'Select the date:',
                                    height:     215, 
                                    width:      234,
                                    draggable:  false, 
                                    resizable:  false

                });//end of dialog_atip


$('#d1').datepicker({
            onSelect:function(){
                    z = $(this).val()
                    alert(z)
                    $("#dd").dialog("close")
            }

});




}//end of window.onload

function callback() { alert(z) }

</script>


</head>

<body>
<div style="display:none" id="dd">
<div id="d1">
</div>

</div>
<p><input onlick="callback()" type="submit" value="Submit" name="B1"></p>

</body>

</html>

【问题讨论】:

  • onSelect 函数中的一些行尾分号不会出错。

标签: javascript jquery html jquery-ui javascript-framework


【解决方案1】:

您的代码中缺少太多分号。另外,尽管输入了window.onload,但请将您的代码放入$(document).ready(function() { });

我对您的代码进行了一些更改。它现在可以工作了。

This获得战利品。

我认为这正是您所要求的。

【讨论】:

    【解决方案2】:

    似乎发生了一些事情。 onclick 拼写错误,正如所指出的 - 缺少分号。这应该有效。

    <script type="text/javascript">
    var z;
    
    $(document).ready(function() {
      $('#dd').dialog({ 
           autoOpen:   true,
           modal:      true,
           overlay:    { opacity: 0.5, background: 'black'},
           title:      'Select the date:',
           height:     215, 
           width:      234,
           draggable:  false, 
           resizable:  false
    
       });//end of dialog_atip
    
    
      $("#B1").click(function(){ 
            callback();
      });
    
      $('#d1').datepicker({
         onSelect:function(){
                        z = $(this).val();
                        alert(z);
                        $("#dd").dialog("close");
         }
      });
    
    });//end of window.onload
    
    
    function callback() { 
        alert(z);
    }
    </script>
    

    我还将输入按钮修改为:

    <input type="button" value="Submit" name="B1" id="B1">
    

    你也可以在这里玩小提琴:http://jsfiddle.net/jE8tL/

    【讨论】:

    • 效果很好!非常感谢大家的帮助。很高兴在这些论坛上找到你。非常感谢大家的帮助。太糟糕了,你不能选择多个答案,因为有很多方法可以给猫剥皮哈哈
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-25
    • 1970-01-01
    • 2019-12-16
    • 1970-01-01
    • 2020-09-08
    相关资源
    最近更新 更多