$(\'.class\').data({data-toggle: \"whatever-value\", data-target: \"#id\"});
I keep getting syntax errors for the -
I originally t
Just to add to what's alredy been pointed out, in Javascript, objects have properties defined by arbitrary strings.
obj.prop is really just sugar for obj["prop"], with the latter being more expressive because all characters are allowed in the latter. Likewise, {prop: "val"} is really sugar for {"prop": "val"}. This is just one of many cases where you'll have to resort to the desugared syntax.
If you want to set/update a data-* attribute, you need quotes if you set the attribute:
$('.class').attr({"data-toggle": "whatever-value", "data-target": "#id"});
Otherwise it parses it like
data-toggle
meaning
data - toggle
subtracting two variables.
You can also use .data() with
$('.class').data({"toggle": "whatever-value", "target": "#id"});
but that does not assign data-* attributes it just stores the data in jQuery's storage system.