我有一个CMS,我可以创建/删除项目/菜单/页面等。我有一个onclick jquery脚本,一旦你点击一个图标就删除了一些东西。我遇到的问题是当我的名字中有一个带撇号的页面/菜单/项目时,我无法将其删除。
以下是我的代码片段:
jquery的:
function confirmDeleteMenuItem(mi_id, mi_name) {
if (confirm('Are you sure you want to delete the menu item \''+mi_name+'\'?\nNote: All sub-items will also be deleted.')) {
$.ajax({
dataType: 'json',
url: cmsRelPath+'/app/menus/ajax_delete_menu_item.php',
type: 'POST',
data: {
mi_id: mi_id
},
php:
$cell .= '<img src="'.$cms_settings["cms_relative_dir"].'/images/icon_delete.png" width="30" height="30" border="0" alt="delete" title="Click to delete item." class="cursorPointer" onclick="confirmDeleteMenuItem('.$row->mi_id.',\''.html_entities($row->mi_name).'\');" />';
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
您可以在confirm()
中使用双引号:
if (confirm('Are you sure you want to delete the menu item "'+mi_name+'"?\nNote: All sub-items will also be deleted.')) {
/* ............ */
和PHP:
$cell .= '<img src="'.$cms_settings["cms_relative_dir"].'/images/icon_delete.png" width="30" height="30" border="0" alt="delete" title="Click to delete item." class="cursorPointer" onclick="confirmDeleteMenuItem('.$row->mi_id.',\''.html_entities(str_replace("'", "\'", $row->mi_name)).'\');" />';
答案 1 :(得分:0)
您可以使用\符号转义撇号,例如\'
。