问题
I am trying to pass a php variable into a java script window.location that returns a user to the current list view after deleting an item from the database. I can't seem to get the syntax correct.
Code:
function confirmation(a) {
var currString = "<? echo $currString ?>";
var answer = confirm("Are you sure you want to delete this item?")
if (answer){
alert("The item has been deleted")
window.location = "list.php?s='. $currString .'&=delete=true&id=" + a;
}
else{
alert("The item has not been deleted")
}
回答1:
Try this:
function confirmation(a) {
var currString = "<?php echo $currString ?>";
var answer = confirm("Are you sure you want to delete this item?");
if (answer){
alert("The item has been deleted")
window.location = "list.php?s=" + currString + "&=delete=true&id=" + a;
}
else{
alert("The item has not been deleted");
}
回答2:
you are pasing php variable to JS variable var currString = "";
and in window.location
you are passing again php variable which is wrong,
so do it like this
window.location = "list.php?s=" + currString + "&=delete=true&id=" + a;
回答3:
The syntax issue was solved by other answers, but you need to take care of an additional issue: URI encoding your variable when you use it in the URL:
window.location = "list.php?s="
+ encodeURIComponent(currString)
+ "&=delete=true&id=" + a;
or else you will run into problems of your variable contains characters like &
.
回答4:
echo "<script>alert('System info has been Save')</script>";
echo "<script>window.location='customer_detail.php?
customer_id=".$customer_id."'</script>";
来源:https://stackoverflow.com/questions/11122696/pass-php-variable-into-java-script-window-location