jQuery(this).parent()。parent()。parent()。find()在iPad中不起作用

时间:2016-05-17 00:45:33

标签: javascript jquery

我有下面的JSP代码,其中tr有ID,最后一个子td有ID。我想为最后一个孩子td更新样式。我怎么能这样做:

<tr class="${rowClass}" id="${loopStatus.index}" >
    <td>....</td>
    <td>....</td>    
    <td id="uploadedDiv" >
                    <div id="success" style="display:none">
                    <div class="floatLeft selectWidth15">
                        <div class="available"></div>
                        </div>
                    <div class="floatLeft selectWidth85 greenText"><fmt:message key="opusmx.upload.uploaded" /></div>
                    <div class="clear"></div>
                    </div>
                    <div id="failure" style="display:none">
                    <div class="floatLeft selectWidth15">
                    <div class="notAvailable"></div>
                    </div>
                    <div class="floatLeft selectWidth85 redText"><fmt:message key="opusmx.upload.captureFailed" /></div>
                    <div class="clear"></div>
                    </div>
    </td>
  </tr>

以下功能仅适用于网络浏览器,但不适用于iPad中的应用。有人可以帮我这个:

function showStatus(elementID,thisObj,status){
                if (status == 'success') {
                    jQuery(thisObj).parent().parent().parent().find('#uploadedDiv').find('#success').css('display', 'block');
                } else {
                    jQuery(thisObj).parent().parent().parent().find('#uploadedDiv').find('#failure').css('display', 'block');
                }
        }

1 个答案:

答案 0 :(得分:0)

我使用tr标签的id解决了这个问题。它找到了孩子并设置了所需的风格:

function showStatus(elementID,thisObj,status){
            if (status == 'success') {
                jQuery('#'+elementID).find('#uploadedDiv').find('#success').css('display', 'block');
            } else {
                jQuery('#'+elementID).find('#uploadedDiv').find('#failure').css('display', 'block');
            }
    }