Вы должны экранировать специальные символы, чтобы jQuery знал, что вы хотите использовать этот символ таким, какой он есть, и он не должен рассматриваться как синтаксическая ошибка.
function escapeString(str) {
return (str + '').replace(/[\\"')(]/g, '\\$&').replace(/\u0000/g, '\\0')
}
// Add special characters here ^ -- after \\
// This allows single, and double quotes,
// opening, and closing parentheses.
Оберните целевое значениес вышеуказанной функцией:
data-target="+ escapeString(targetValue) +"