0

I have a <button> with the rel="example.jpg". I want the button to load the image in my #area DIV, just after clicking on it, not with the page load. So I use this code and everything is done:

$(document).ready(function(){
$("button").click(function(){
    var imgUrl = $(this).attr('rel');
    $("#area").html("<img src='" + imgUrl + "' alt='description' />");
});
});

<button rel="example.jpg">Click Me</button>
<div id="area"></div>

Here is its jsfiddle.

Now I found that the rel is not valid for the <button>.

I'm interested to know other solutions to do this, such as using jquery .data()

Farzad Bayan
  • 251
  • 2
  • 4
  • 13

3 Answers3

3

HTML

<button data-rel="example.jpg">Click Me</button>

jQuery

$("button").click(function () {
    var imgUrl = $(this).data('rel');
    $("#area").html("<img src='" + imgUrl + "' alt='description' />");
});
Anton
  • 32,245
  • 5
  • 44
  • 54
1

change

<button rel=

to

<button data-rel=

http://jsfiddle.net/x3QdU/1/

Parfait
  • 1,752
  • 1
  • 11
  • 12
0

Change your code to this:

$(document).ready(function(){
$("button").click(function(){
    var imgUrl = $(this).data('rel');
    $("#area").html("<img src='" + imgUrl + "' alt='description' />");
  });
});

<button data-rel="example.jpg">Click Me</button>
<div id="area"></div>

Fiddle: http://jsfiddle.net/x3QdU/4/

Josh
  • 2,835
  • 1
  • 21
  • 33