2009-04-10 52 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值,而不是从服务器上的字符串中剥离值。从关注点分离来看,这更清晰更好。