html属性用于附加信息和转发用法

时间:2012-11-22 17:01:27

标签: javascript jquery html

问题必须是微不足道的,但我不知道如何正确地制定它。 好的,我正在使用PHP和jQuery,我也使用ajax来处理用户到服务器的请求。 我正在寻找的是获取一些信息的简单方法哦,我会更好地展示我想要的一个例子。

我使用DB中的一些信息构建页面。 例如,我有一个包含颜色的对象的表,当页面加载时我们有:

 <body>
 <span class="object_span">red</span><button>random color</button> 
 <span class="object_span">white</span><button>random color</button>
 </body>

我简化了这一点,但你知道重点是什么。

下一步,我想使用ajax更改其中一个:

 $(document).ready(function(){
 $('#object_span').change(function(){

  $.post(
'ajax_handler.php',  
    {object_id: 'how to simply get this parameter???' },  //         <---- problem is here
    function(responseText){  
    console.log(responseText);  
    },  
    "html"  
  );  

  });
 });

可能有一些参数我可以添加到span:'my_object_id:1232'??或者像这样的东西,我可以简单地在js或jQuery中使用,如下所示:

     $(document).ready(function(){
     $('#object_span').change(function(){
     var current_object_id = $('#object_span').attr('my_object_id');
     ...
     });
 });

谢谢你的帮助。

3 个答案:

答案 0 :(得分:3)

使用data属性:

<body>
     <span class="object_span" data-my_object_id="1234">red</span><button>random color</button> 
     <span class="object_span" data-my_object_id="1235">white</span><button>random color</button>
</body>

然后你可以这样做:

$(document).ready(function(){
    $('.object_span').change(function(){
     var current_object_id = $(this).data('my_object_id');
     ...
});

答案 1 :(得分:2)

您可以在访问已定义的属性时将属性分配给span并访问它们。

<强> Live Demo

HTML

<span class="object_span" my_object_id="I am added">red</span>

的Javascript

 $('#object_span').change(function(){
       var current_object_id = $(this).attr('my_object_id');
 });

您也可以使用数据属性名称。

<强> Live Demo

HTML

<span class="object_span" data-my_object_id="I am added">red</span>

Javascript

   $('#object_span').change(function(){
        var current_object_id = $(this).data('my_object_id');           
   });

答案 2 :(得分:1)

我建议你看看HTML5数据属性和jQuery data()方法