jquery gantt editor,json数据中的start和end参数,均调整为13位的时间戳。页面中显示的日期和传输的完全不一致,
原因是duration,甘特图会根据开始时间(start)和持续时间(duration)来计算结束日期,计算的结果不包含周六日,
如何让结束日期显示为后台传输的值,而不是显示开始时间和持续时间的计算结果???
急!!!
jquery gantt editor甘特图,json数据中的start和end参数,页面中显示的日期和传输的完全不一致
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
你知我知皆知 2024-08-07 13:39关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
要解决这个问题,你需要修改你的甘特图编辑器的配置,以使用正确的格式来表示结束日期。这通常涉及到在JSON数据中定义一个特定的字段或属性,用于存储甘特图的实际结束日期。
首先,在你的甘特图编辑器的配置文件中(例如
gantt.json),添加一个新的字段来存储甘特图的结束日期:{ "config": { // ... "fields": { // ... "endDate": { "type": "date", "format": "yyyy-MM-dd" } }, // ... } }然后,当用户将甘特图的数据发送到服务器时,你应该将这个新的字段添加到JSON对象中,并确保它被正确地解析和处理。例如,如果你正在使用Node.js,你可以这样做:
const Gantt = require('gantt'); const config = require('./gantt.json'); const gantt = new Gantt(config); // 在这里,你可以在甘特图的`onLoad()`函数中添加逻辑来更新结束日期。 // 这里是一个简单的示例: function updateEndDate() { const data = JSON.parse(window.location.href.match(/data=(.*?);/)[1]); const endDateField = data.endDate; const startDateField = data.startDate; if (endDateField && startDateField) { // 更新甘特图的结束日期 gantt.update({ [endDateField]: new Date(`${startDateField} ${endDateField}`) }); } else { console.log(`Missing required fields: ${endDateField}, ${startDateField}`); } } updateEndDate();在这个例子中,我们检查了是否有
startDate和endDate字段,如果两者都存在,我们就更新甘特图的结束日期。否则,我们会打印一条错误消息。请注意,你需要根据你的具体需求调整这段代码。例如,你可能需要处理不同的日期格式,或者处理不同类型的甘特图数据。
解决 无用评论 打赏 举报