我已经使用谷歌搜索了一段时间,这是一个简短的背景,我是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> <input type='text' name='driver_num' value='$grab_staff[driver_num]' maxlength='15' /><br />");
print("<tr><td id='employee_left'><b>Expiry:</b> </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个错误,但是可以使每个部分的工作都更加容易