2009-04-10 53 views
0

當用戶通過任何特定的消息發出ajax請求時,我有一個元素ID爲「message」+ id(message1,message2等)的消息列表,我想只訪問id。我應該提交之前從jQuery中的消息ID剝離ID或在服務器端執行它?還是有更簡單的方法來表示每個消息的網頁上的ID?存儲隱藏的ID,然後提交他們與AJAX,最佳實踐?

回答

1

您可以將消息ID作爲屬性附加到DOM元素本身。 在mootools的是

Elm.set('messageId',12);//12 is an arbitrary message id I chose for this example. 
//get it 
alert(Elm.get('messageId')); 

我在JQuery的100%肯定有非常類似的東西。 但是,使用JS從帶有預定格式的字符串中剝離id本身並不困難。

0

用戶必須點擊一下,對不對?如果它是一個鏈接,我會把id放在onclick函數調用的某個地方;如果它是一個按鈕,與隱藏表單輸入相同的處理。你用jQuery完成這一切使得它更容易,但並不特別重要。

+0

既不是,它的一個div。用戶cicks div並啓動ajax調用。 div id中有id,但是如何分開? – zsharp 2009-04-11 00:04:57

0

根據您網頁的其他部分的工作方式,您可以將每個元素包裹在表單標記中,並使用隱藏字段作爲ID。可能的話,結合jQuery表單插件(http://www.malsup.com/jquery/form/)可以爲您節省一些整體開發工作量。

只要你不關心把非兼容屬性放在那裏,向dom添加屬​​性也是可以的。

無論如何,我肯定會建議在您的ajax請求中向服務器發送一個id值,而不是從服務器上的字符串中剝離值。從關注點分離來看,這更清晰更好。