![](/img/trans.png)
[英]How to get value of an hidden input from PHP Foreach loop with javascript
[英]Get access the JavaScript loop value in php
var marker,i,marker1,k;
for(i=0; i <20; i++)
{
//I want to assign this i variable value in php variable
function addMarker(latLng, map) {
var marker = new google.maps.Marker({
position: latLng,
map: map,
animation:google.maps.Animation.BOUNCE
});
//like as
var conte='<?php $j="<script>document.write(i);</script>";
?>';
我想在下面使用該值:
var contentvalue= '<div style="color: #008000;"><strong><b><?php echo "$b[$j]" ?></b></strong></div>';
var infowindow = new google.maps.InfoWindow({
content: contentvalue,
});
marker.addListener('click', function() {
infowindow.open(map, marker);
});
return marker[i];
}
}
本質上,您正在嘗試向后執行此操作。 您可以使用PHP在服務器端動態構建JavaScript塊,但是在執行JavaScript時不能使用PHP。 由於PHP是服務器端的,而JS是客戶端的,因此您需要決定使用其中一種語言。
另外,您不應該在for循環內定義函數。 只需在函數外部定義並從for循環中調用即可。
function addMarker(latLng, map) {
var marker = new google.maps.Marker({
position: latLng,
map: map,
animation:google.maps.Animation.BOUNCE
});
return marker;
}
function addInfoBox(contentString) {
var infowindow = new google.maps.InfoWindow({
content: contentString
});
return infowindow;
}
var i = 0
for(i=0; i < 20; i++)
{
var contentString='<script>document.write('+i+');</script>';
var marker = addMarker(latLng, map);
var info = addInfoBox(contentString, marker);
marker.addListener('click', function() {
info.open(map, marker);
});
}
這段代碼並不是很完美,但是我認為它給出了您應該如何開始的總體思路。 您必須清理它並確保它適合您的應用程序。 我看不到這里需要任何PHP,因為這是所有客戶端代碼,並且Google Maps API不會解析或執行任何PHP代碼。
嘗試:
<script>
var phparr = <?php echo json_encode($phparr); ?>;
for (i in phparr){
alert("hey" + phparr[i]);
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.