【问题标题】:jQuery parse HTML string and do some operations on itjQuery 解析 HTML 字符串并对其进行一些操作
【发布时间】:2012-08-17 10:48:44
【问题描述】:

我有一个动态创建的 HTML 字符串(表格行)。该字符串中的行数可以大于 1。

string myHtml = "
            <tr>
               <td class="text-left">
                  <label class="label-none">a.docx</label>
               </td>
               <td>
                  <label class="label-none">Manuscript </label>
               </td>
               <td>
                   <input class="del-file-cb" file-id="71" type="checkbox" />
               </td>
            </tr>" 
            etc...

在插入它到 DOM 元素(表)之前,我想检查它内部是否存在具有 file-id 属性的特定值的复选框输入。如果是这样,我想将第一个 labeltext在放置找到的复选框的行中)更改为例如lorem 和第二个 labeltext 到例如ipsum。该怎么做?

编辑

这里还有一些有用的信息stackoverflow.com/questions/704679/parse-html-string-with-jquery

【问题讨论】:

    标签: jquery


    【解决方案1】:
    var mYdomelement = $('
                <tr>
                   <td class="text-left">
                      <label class="label-none">a.docx</label>
                   </td>
                   <td>
                      <label class="label-none">Manuscript </label>
                   </td>
                   <td>
                       <input class="del-file-cb" file-id="71" type="checkbox" />
                   </td>
                </tr>');
    
    if(mYdomelement.find(":checkbox").attr("file-id") == "Yourvalue"){
       $("label:first-child", mYdomelement).text('lorem');
       $("label:nth-child(2)", mYdomelement).text('ipsum');
    }
    

    这里正在工作demo

    【讨论】:

    • 您可能想转义属性中的双引号。
    【解决方案2】:

    你可以这样做:

    if($(#elementId + ' input[file-id|="YOUR_VALUE_HERE"]').length > 0)
    {
        $(this).ancestors().eq(2).find('label').eq(0).val(FIRST_LABEL_VALUE_HERE);
        $(this).ancestors().eq(2).find('label').eq(0).val(SECOND_LABEL_VALUE_HERE);
    }
    

    【讨论】:

    • 它将搜索页面上的 DOM 元素,而不是在我的字符串中
    • 对不起,我以为你想在 DOM 中查找复选框,而不是在字符串中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多