如果`if`语句匹配,如何将图像附加到表中?

时间:2012-05-26 22:58:05

标签: javascript jquery html

我不知道是否可能,但下面我有一个简单的html表:

<table id="plus" align="center">
  <tr>
    <th>
    </th>
  </tr>
</table>

如果if语句匹配,那么是否可以将图像附加到上面的<th>标记内?如果语句不匹配,那么我可以将图像链接附加到<th>标记内吗?

下面是if语句,实际上是jQuery,包含一些php来尝试查找'textQuestion':

if (qnum == <?php echo (int)$_SESSION['textQuestion']; ?>) {
  <img src="Images/plussigndisabled.jpg" width="30" height="30" alt="Look Up Previous Question" class="plusimage" name="plusbuttonrow"/>
} else {
  <a onclick="return plusbutton();">
  <img src="Images/plussign.jpg" width="30" height="30" alt="Look Up Previous Question" class="plusimage" name="plusbuttonrow"/>
  </a>
}

4 个答案:

答案 0 :(得分:3)

既然你说你使用jQuery就可以做到这一点

....
    var enabledImage = "plussign.jpg";
    var disabledImage = "plussigndisabled.jpg";
    var selectedImage;
    var imageHtml;

    if(...) {
        selectedImage = enabledImage;
    } else {
        selectedImage = disabledImage;
    }  

    imageHtml = getImageHtml(selectedImage);
    $('#ElementID').append($(imageHtml));
....

function getImageHtml(imageFileName) {
    return '<img src="Images/' + imageFileName + '" width="30" height="30" alt="Look Up Previous Question" class="plusimage" name="plusbuttonrow"/>';
}

答案 1 :(得分:0)

将以下唯一ID应用于TH:

<table id="plus" align="center">
  <tr>
    <th id="foo">
    </th>
  </tr>
</table>

然后只使用内部HTML属性。

var bar=document.getElementByID('foo');
bar.innerHtml="<img />";

(这假设javascript是为响应用户输入而运行的,即页面加载完毕后)

答案 2 :(得分:0)

无论哪种方式,您都会附加某些内容,因此请确定您使用if-statement添加的内容,然后将其附加。无论哪种方式,它都在同一个地方。

$("#plus th").html(function(){
    return ( qnum === 5 )
        ? "<img />"
        : "<a><img /></a>" ;
});

此时,追加data

答案 3 :(得分:0)

工作演示 http://jsfiddle.net/26Jaf/

良好的API:http://api.jquery.com/append/

<强>码

var qnum = 1;  
var append_data = "";
if (qnum == 1) { // i.e. if condition satisfy.

   append_data = '<img src="http://images.wikia.com/maditsmadfunny/images/5/54/Hulk-from-the-movie.jpg" width="30" height="30" alt="Look Up Previous Question" class="plusimage" name="plusbuttonrow"/>';


} else {
   //do something else

alert('d');
}
$("#plus tr th").append(append_data);
​