2016-12-09 32 views
0

我爲我的站點做了一個小型的留言箱,我用jquery加載頁面並像往常一樣將所有數據存儲在數據庫中。無論如何,當用戶想編輯帖子時,他們雙擊它並且可以編輯帖子。我正在使用下面的代碼來顯示編輯器,讓他們做任何他們需要的東西。可悲的事情是沒有工作,這事情是:用jquery加載消息並調用id

我不能包括在我的Ajax調用我在url:標籤id

這裏是看看代碼

<? php 
    public function make_editable($shout, $id) { 
     $string = "<span ondblclick=\"javascript: edit_shout('".$id."'); return false;\">".$shout."</span>"; 
     return $string; 
    } 
?> 

<script type="text/javascript"> 
    function edit_shout($id) { 
     $("#panel_edit_shout").slideDown(); 
     $('#update').val($id); 
     $('#delete').val($id); 
     $.ajax({ 
      url : "/chat?loadModule=3&id={$id}", 
      dataType: "text", 
      success : function (data) { 
       $("#updateshoutmessage").val(data); 
      } 
     }); 
    } 
</script> 

如果我用例如1替換{$ id},然後它正常工作,並將shout id 1的文本加載到字段中,就像它應該的一樣,但是如果我嘗試使用$ id動態加載,它只會得到一個錯誤,因爲$ id即將成爲空白......感謝您的幫助:)。

+0

umm $ id是什麼?你需要告訴我們在哪裏設置 – Pabs123

+0

似乎,在JS中,你期望_PHP variable_'$ id'被識別!請顯示更多代碼(HTML + JS + PHP)。 – cFreed

+0

如果$ id是一個數字,爲​​什麼你創建它作爲一個jQuery對象?嘗試這樣的事情:「/ chat?loadModule = 3&id =」+ id其中id =一個數字值 – Dranes

回答

0

由於@Dranes的幫助,很容易修復。只是需要添加+

<script type="text/javascript"> 
    function edit_shout($id) { 
     $("#panel_edit_shout").slideDown(); 
     $('#update').val($id); 
     $('#delete').val($id); 
     $.ajax({ 
      url : "/chat?loadModule=3&id=" + $id, 
      dataType: "text", 
      success : function (data) { 
       $("#updateshoutmessage").val(data); 
      } 
     }); 
    } 
</script> 
1

呃... ...如果變量是在JavaScript,你可以這樣做:

url : "/chat?loadModule=3&id=" + $id, 

如果是PHP,那麼你所要做的

url : "/chat?loadModule=3&id=<?=$id?>", 

但像其他人說的,沒有更多的代碼,我們無法提供幫助。