2016-11-02 9 views
0

JS関数内のパラメータをエスケープする方法を検索しましたが、多くの提案を試みましたが、何も動作しませんでした。ここでは、コードは次のとおりです。パラメータとしてPHP変数を使用したJavaScript関数

echo '<a class="btn btn-xs btn-danger" onclick="delete('.$fetch['bicc'].')"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 

私はいつもこのエラーが出る:

SyntaxError: identifier starts immediately after numeric literal 
delete(123456789_7_ZY7) 
+1

、あなたは、以下の解決策を見つけることができ – Fky

+0

引用符を追加する必要があります。あなたは '' '' –

答えて

0

あなたが引用符を追加する必要があり、あなたのparamが文字列型である:

echo '<a class="btn btn-xs btn-danger" onclick="delete(\''.$fetch['bicc'].'\')"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 
0

あなたはおよそ\"

を忘れてしまいました
onClick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a> 

あなたがJavaScriptコードでPHPの変数を使用したい場合は、あなたがjson_encodeでそれらをラップする必要があり、経験則として

echo '<a class="btn btn-xs btn-danger" onclick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 
0

:ようなことdは

echo '<a class="btn btn-xs btn-danger" onclick="delete('.json_encode($fetch['bicc']).')"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 

json_encodeはほとんどを取ることができるですPHP変数(文字列、配列、連想配列)を使用し、それらをJavaScriptの対応部分として正しくエンコードします(例:文字列の引用符を追加する)。パラメータは文字列

echo "<a class=\"btn btn-xs btn-danger\" onclick=\"delete(\"${fetch['bicc']}\")\"><span class=\"glyphicon glyphicon-remove\"></span> Remove</a>"; 
0

$ [「BICCを」]フェッチ文字列型の値を持っていますか?

はい:あなたのparamは文字列型である

echo '<a class="btn btn-xs btn-danger" onclick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 
0

あるので、あなたが引用符を追加する必要があります

-1
$data = str_replace('_', ' ', $fetch['bicc']); 
echo '<a class="btn btn-xs btn-danger" onclick="delete('.$data.')"><span class="glyphicon glyphicon-remove"></span> Remove</a>' 
+0

を忘れてしまいました。単にコードを投稿するだけではなく、あなたの答えを説明しようとしてください – Djave

関連する問題