javascript
  • jquery
  • 2013-08-27 131 views 1 likes 
    1

    在下面的代碼中,我該如何隱藏表的id列。使用jquery隱藏表td

    var joblist = ""; 
    joblist = joblist + "<table ><tr><th >Select</th><th id='td_1'>ID</th><th >Name</th><th >Names</th><th>OS</th><th >Server</th></tr>"; 
    
    var tabString = '<tr ><td > ' + '<input type="radio" name="joblist" onclick="myfunc(this);" id= ' + value.jobid + 'value=' + value.jobid + '> </td><td id="td_1" >' + value._id + '</td><td >' + value.names + '</td><td a>' + value.os + '</td><td >' + value.server + '</td></tr>'; 
    
    joblist = joblist + tabString; 
    

    我試圖

    $("#td_1").hide() 
    

    但它不是working.Any其他解決辦法?

    +1

    你想隱藏什麼事件'$(「#td_1」)'? –

    +0

    通過「不工作」,它實際上做了什麼?你想隱藏表格的整個第二列嗎? –

    回答

    3

    首先,如果有多個TD,那麼不要使用相同的ID,在這種情況下,添加一些其他職位或前。並使用作爲

    $('[id^="td_1"]').hide();//for post 
    $('[id$="td_1"]').hide();//pre 
    

    嘗試所有ID

    $('[id="td_1"]').hide(); 
    
    1

    首先必須unique。您已聲明相同的ID爲THTD

    $("#your_td_id").hide(); 
    

    如果你不止一個TD然後用class,而不是ID

    0

    隱藏元素之前,您必須將其分配給DOM。如果你想隱藏的多個元素,你必須使用class屬性而不是id

    var joblist = ""; 
    joblist = joblist + "<table ><tr><th >Select</th><th class='td_1'>ID</th>" + 
            "<th >Name</th><th >Names</th><th>OS</th><th >Server</th></tr>"; 
    
    var tabString = '<tr ><td > ' + '<input type="radio" name="joblist" 
           onclick="myfunc(this);" id= ' + value.jobid + 'value=' + 
           value.jobid + '> </td><td class="td_1" >' + value._id + 
           '</td><td >'+ value.names + '</td><td a>' + value.os + 
           '</td><td >' + value.server + '</td></tr>'; 
    
    joblist = joblist + tabString; 
    
    $('#myElement').append(joblist); 
    $('.td_1').hide(); 
    
    0

    正如其他人所說,你不能匹配的ID純粹基於多個元素;它們在整個文檔中必須是唯一的。我懷疑你所看到的是'ID'標題從表格的頂部消失,但值在表格中稍後可以看到。

    其他答案已經提到切換到一個類;還有另外一種選擇可用時,使用所述nth-child僞選擇:

    $("table tr > *:nth-child(2)").hide(); 
    

    這將隱藏第二元件立即下tr,如*匹配兩者THTD。如果您不希望它可見的話,最好的解決方案包括CSS:

    table tr > *:nth-child(2) { display: none; } 
    

    或者乾脆使其爲<input type='hidden' />,而不是和它包括在現有的細胞之一(例如旁邊的單選按鈕)。

    請注意,你在你的HTML有一些額外的錯誤,包括:

    <td a>' + value.os + 
    

    ,您可能要在同一時間進行調查。

    相關問題