2012-12-17 107 views
1

我想突出顯示從mysql數據庫中檢索到id的映射圖像部分。 我已經將ID存儲在$ loc變量中。現在使用jquery選擇器,我想在我的jquery選擇器中傳遞這個php變量,以便它將突出顯示與$ loc中具有相同id的圖像部分。 這是我工作的代碼:如何在jQuery選擇器中傳遞一個php變量值?

<script type="text/javascript" src="jquery.js"></script> 
<script type="text/javascript" src="jquery.maphilight.js"></script> 
<script type="text/javascript"> 
$(function() { 
     $(".mapping").maphilight(); 


    $(".hoverable").css("border", "3px solid red"); 


    var data = $('#cr2').data('maphilight') || {}; 
    data.alwaysOn = !data.alwaysOn; 
    $('#cr1').data('maphilight', data).trigger('alwaysOn.maphilight'); // portion to always highlight (I WANT TO PASS THE PHP VARIABLE $LOC INSTEAD OF '#CR1' 

});<area shape="poly" id="cr1" class="room" coords="549,272,489,334,534,377,594,316" href="www.msn.com" target="_top" alt="CR1" name="room-1"> 

+0

我想傳遞到位 '#CR1' 的$ LOC(PHP變量)的進入jQuery選擇的值。在第二行!請幫忙 – Faizan

+4

爲什麼你不能簡單地把'$('#cr1')'改成'$('#<?php echo $ loc;?>')'? – Matt

+0

哦,非常感謝它很有效,我其實是新的jquery,沒想到我可以通過腳本標記內的PHP代碼... – Faizan

回答

4

更換#CR1#<?php echo $loc ?>

相反的:

$('#cr1').data('maphilight', data).trigger('alwaysOn.maphilight'); 

用途:

$('#<?php echo $loc ?>').data('maphilight', data).trigger('alwaysOn.maphilight'); 
+2

您可能還需要選擇器中的'#'。 – Matt

+0

這是正確的..編輯回答.. –

+0

@Matt我跟隨你在Twitter上 – Faizan

-1

可以使用json_encode功能並通過PHP變量$loc作爲參數

例如

var data = <?php echo json_encode($loc); ?>; 

jQuery.each(data, function(i,event) { 
    // alert(event.toSource()); 
    var id = event.id; // here id is the array of the value based on the php variable for $loc 
    badge_name = event.name; // here name is the array of the value based on the php variable for $loc 
}); 
+0

你甚至在這裏回答正確的問題? – Matt

+0

我知道它的工作原理,只是通過回顯jquery選擇器中的php變量。爲什麼要在代碼很短的時候使用長代碼:) @Matt – Faizan

相關問題