我已经使用谷歌搜索了一段时间,这是一个简短的背景,我是PhP的新手,还是JQuery UI的新手。我很欣赏我正在使用的PhP,但是我正在“修复”一个MySQL数据库UI以便让我的生活更轻松(从长远来看),因此我之所以首先教自己PhP(工作没有任何现金来固定它,然后您可以使用Excel电子表格重写整个精简版。
我能找到的最接近的修补程序是这里的一个帖子How can I pass PHP variable to Datepicker in jQuery?

但是没有喜悦。我没有问题使用它来创建/读取和删除,因为现有数据没有分配给要输入的JQuery ID,所以更新带来了问题。
我正在使用的变量可以填充文本框,而不是所发布的值..... grrr!
我的整个脚本长1900行,因此希望张贴相关位就足够了。
我的标题Jquery代码和表单中的更新代码:

enter code here

<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness    /jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<!-- 3 datepicker javascripts -->
<script> language ="javascript">
$(function() {
$( "#datepicker" ).datepicker();
$('#userDatedr').datepicker({dateFormat:"dd MM yy",
            altField: '#drDate', altFormat: 'yy-mm-dd'});
                //Set javascript date to php variable
            var phpDate = "<?php echo $grab_staff[driver_exp]?>";
});


                $("#drDate").datepicker("setDate",phpDate);
</script>
<?php
<body>
<html>

print("<tr><td id='employee_left'>Drivers Licence:</td><td>
            <b>Number:</b>&nbsp;<input type='text' name='driver_num'            value='$grab_staff[driver_num]' maxlength='15'     /><br />");
            print("<tr><td id='employee_left'><b>Expiry:</b>&nbsp;</td><td>    <input type= 'text' value='$grab_staff[driver_exp]'     id=\"userDatedr\" maxlength='10'><input type=\"text\" id=\"drDate\"     name=\"drDate\">");

?>
</body>
</html>


要澄清的是,如果我选择一个新日期,datepicker会在编辑时起作用,我希望能够从数据库中重新发布现有日期并进行更新,而无需用户记住该表单而再次从datepicker日历中选择日期有4个不同的日期字段,包括出生日期,驾驶执照到期日期,原始入职日期和最后入职日期。代码上方的当前字段是驱动程序的到期日期。一旦我完成故障查找,发布的值将从文本更改为隐藏,因此目前它提供了两个字段,第一个字段显示日期基础中的原始日期,如果使用datepicker编辑,则第二个字段将更改为新日期。如果未使用日期选择器更改日期,则将被隐藏的文本框为空白。
任何帮助/建议将不胜感激
干杯

亚瑟

最佳答案

<script> language = "javascript">应该类似于<script type="text/javascript"> code here </script>

$(function() { your code here }不确定您要在这里做什么,但我只是将其放在准备好的文档中,如下所示:

也不要在发送给日期选择器的对象中声明变量,最好在上面做

$(document).ready(function() {
        //Set javascript date to php variable
        var phpDate = "<?php echo $grab_staff[driver_exp]?>";
        $( "#datepicker" ).datepicker();
        $('#userDatedr').datepicker({dateFormat:"dd MM yy",
            altField: '#drDate', altFormat: 'yy-mm-dd'});
        });
        $("#drDate").datepicker("setDate",phpDate);
});


但也许首先要通过检查控制台开始(按f12键单击控制台),看看出现了什么错误。

我建议不要尝试一次使整个事情正常工作,例如,首先尝试看看是否可以像这样在javascript中警告php var:

<script type="text/javascript">
     var phpDate = "<?php echo $grab_staff[driver_exp]?>";
     alert(phpDate);
</script>


如果您看到正确的日期还可以,请继续下一步,首先测试第一个日期选择器,以检查日期选择器是否正常运行:

<script type="text/javascript>
    $(document).ready(function() {
        $( "#datepicker" ).datepicker();
    });
</script>


如果这项工作可行,请继续下一步,并像这样工作,这样您就不必一次修复300个错误,但是可以使每个部分的工作都更加容易

07-24 09:43
查看更多