Reputation: 111
so I have this php code
$listing .= "<button onclick='updateValue(".$id.", ".$key.")'>change value</button>";
$id
is an integer and works just fine, key
is a reference from a for loop and the value translate well in the html code however the key
value table
is recognised as a variable instead of a string.
HTML: onclick="updateValue(3, table)"
I have tried evey trick I know (creating new variable with quotes, adding single quotes in the onclick and (string)$key ) to convert it as a string but nothing is working so far. any idea please ? is it even possible ?
Upvotes: 2
Views: 90
Reputation: 7933
Try this way
$listing .= "<button onclick='updateValue(".$id.", \"".$key."\")'>change value</button>";
Upvotes: 2
Reputation: 11328
You need to add quotes to tell javascript that it's a string. Since you're inside an echo
you'll need to escape the quotes:
$listing .= "<button onclick='updateValue(".$id.", \"".$key."\")'>change value</button>";
Upvotes: 7