我正在尝试从以下 html 代码中删除最后一个字符
<tbody><tr><tr>1<td><label for='depart1'>Department 1</label><br /><input type='text' id='depart1' class='textbox large' value='IT' /><br><label for='Courses_for_depart1'>Course for Department 1</label><br /><textarea id='Courses_for_depart1' class='textarea large' >OS</textarea></td></tr></tbody>
使用以下代码
addHtml.slice(0,-13);
它应该删除 </tr></tbody>
但它只删除了 ></tbody>
如何摆脱这种奇怪的行为。
更新
addHtml=$("#departments").html();
<table id="departments">
<tbody><tr><tr>1<td><label for='depart1'>Department 1</label><br /><input type='text' id='depart1' class='textbox large' value='IT' /><br><label for='Courses_for_depart1'>Course for Department 1</label><br /><textarea id='Courses_for_depart1' class='textarea large' >OS</textarea></td></tr></tbody> </table>
上面的代码片段是从 chrome 的 View 源代码中复制的。
最佳答案
关闭 </tbody>
之间可能有空格标签和 </tr>
标签。尝试这样的事情:
addHtml = addHtml.trim();
var tbody = '</tbody>';
var t1 = addHtml.indexOf(tbody)+tbody.length;
var t2 = addHtml.lastIndexOf('</tr>');
var len = t1-t2;
var newString = addHtml.slice(0,-len); // This will have the string without the </tr> </tbody>
关于javascript - JS Slice() 不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30127858/