2013-03-04 22 views
0

內瓦爾我有一些代碼來記錄某個動作PHP的JavaScript的

$('#record').click(function(){ 
$.get("../confirm.php", { "id": '<?php echo $record; ?>' }, function(data){}); 
}); 

,工作正常,但我不希望頁面充滿了JavaScript和如我還有其他事情一樣這也是它,所以我想把它移動到一個js文件。

在PHP文件

<script type="text/javascript">var record = "<?= $record ?>";</script> 
<script type="text/javascript" src="jsfile.js"></script> 

在js文件

$('#record').click(function(){ 
$.get("../confirm.php", { id: record}, function(data){}); 
}); 

但它並不想打球,任何想法如何做到這一點?

+0

請勿使用'<?='語法輸出代碼。這是我能看到的唯一區別...我會說這也是你的代碼的問題。檢查瀏覽器的JS控制檯是否有任何錯誤。 – 2013-03-04 12:59:51

+0

你不能把它包裝所有的功能和使用上的實際按鈕的onclick事件,所以你可以在通過的onclick – Dave 2013-03-04 13:00:08

+1

什麼瀏覽器源獲取輸出'變種record'傳遞變量? – charlietfl 2013-03-04 13:02:26

回答

0

如果可以的話建議給你。在元素的視圖中設置ID。然後當點擊該動作時,獲取數據的ID。

例子:

<input type="text" name="inputName" id="<?php echo $record; ?>" class="btnToRecord" /> 

$('.btnToRecord').click(function(){ 
    var clickedElement = $(this); 
    $.get("../confirm.php", { id: clickedElement.attr("id") }, function(data){}); 
}); 

編輯:更正爲$(這)是指向獲取而不是元件,投入無功會解決這個問題

+0

我試過這個,但它仍然不會插入來自confirm.php – 2013-03-04 13:08:34

+0

我不得不把$(this)放入一個var,它的工作,謝謝 – 2013-03-04 13:14:06

1

使「記錄」作爲類的div並分配php變量$ record作爲它的id。使用event.target.id從div獲取變量$ record。

<div class="record" id="<?php echo $record;?>"> 
Your code here 
</div> 

,並使用此 $點擊(函數(事件){VAR 紀錄= event.target.id; //你的代碼在這裏 })( '記錄')。