javascript - 如何在 onclick 函数中加上单引号?
问题描述
我的代码在这里 printNextPeriod(new Date(2019-01-01), new Date(2020-01-01),26); 需要在日期之间加上单引号
期待喜欢
printNextPeriod(new Date('2019-01-01'), new Date('2020-01-01'),26);
我需要从下面的代码中修复这个错误?
if (data == 'pestcontrol') {
return ('<button onclick="printNextPeriod(new Date('+row["first_job_dt"]+'), new Date('+row["end_date"]+'),'+row["day_bw_job"]+');" data-jobdays="'+ row["day_bw_job"] +'" data-fjd="'+ row["first_job_dt"] +'" data-actiendcontr="'+ row["end_date"] +'" class="btn btn-success btn-sm actpest" data-target="#viewactipestmodal" data-keyboard="false" data-backdrop="static" data-toggle="modal">View Schedule-P</button>');
}
数据表中的这些代码
{
"data" : "pest_or_clean",
"bSortable": false,
render: function (data, type, row, rowData) {
//console.log(data);
if (data == 'pestcontrol') {
return ('<button onclick="printNextPeriod(new Date('+row["first_job_dt"]+'), new Date('+row["end_date"]+'),'+row["day_bw_job"]+');" data-jobdays="'+ row["day_bw_job"] +'" data-fjd="'+ row["first_job_dt"] +'" data-actiendcontr="'+ row["end_date"] +'" class="btn btn-success btn-sm actpest" data-target="#viewactipestmodal" data-keyboard="false" data-backdrop="static" data-toggle="modal">View Schedule-P</button>');
}
else {
return ('<button data-jobdays="'+ row["day_bw_job"] +'" data-fjd="'+ row["first_job_dt"] +'" data-actiendcontr="'+ row["end_date"] +'" class="btn btn-success btn-sm actclean" data-target="#viewacticleanmodal" data-keyboard="false" data-backdrop="static" data-toggle="modal">View Schedule-C</button>');
}
}
}
解决方案
使用转义引号。
if (data == 'pestcontrol') {
return ('<button onclick="printNextPeriod(new Date(\''+row["first_job_dt"]+'\'), new Date(\''+row["end_date"]+'\'),'+row["day_bw_job"]+');" data-jobdays="'+ row["day_bw_job"] +'" data-fjd="'+ row["first_job_dt"] +'" data-actiendcontr="'+ row["end_date"] +'" class="btn btn-success btn-sm actpest" data-target="#viewactipestmodal" data-keyboard="false" data-backdrop="static" data-toggle="modal">View Schedule-P</button>');
}
如果您使用 ES6 模板文字,它会更简单。此外,当对象中的属性名称是文字时,您可以编写variable.prop
而不是更详细的variable["prop"]
.
if (data == 'pestcontrol') {
return (`<button onclick="printNextPeriod(new Date('${row.first_job_dt}'), new Date('${row.end_date}'),${row.day_bw_job}');" data-jobdays="${row.day_bw_job}" data-fjd="${row.first_job_dt}" data-actiendcontr="${row.end_date}" class="btn btn-success btn-sm actpest" data-target="#viewactipestmodal" data-keyboard="false" data-backdrop="static" data-toggle="modal">View Schedule-P</button>`);
}
推荐阅读
- python - rlike中的pyspark数据框如何从数据框列之一逐行传递字符串值
- javascript - 使用 jquery 和 php 的动态 Excel 公式
- reactjs - 如何导入和使用存储在自动生成的 *.d.ts 文件中的 typescript 接口?
- vue.js - 在 Vuetify 中使用 JavaScript 逐行读取 v-textarea
- android - 如何从呼叫日志中检索具有唯一编号且不重复的行
- reactjs - 使用两种不同的道具类型以编程方式更改路线
- .net - Azure Pipelines:作业失败通知
- android - 未解决的参考:启动。我不能用 kotlin 协程写例子
- python - 迭代两个以列表为值的字典
- bash - 如何使用 Shell 脚本覆盖 mac 中的环境变量