zoukankan      html  css  js  c++  java
  • 多段HTML拼接的优化处理

    基础的系统中有个地方需要传一个HTML代码,这个HTML又是动态生成拼接的,但基本的结构知道。

    原始的代码使用的是下面这样的字符串拼接:

    var html = '';
      var SugCnt = JSONResult.SugCnt;
      var addlist= $("#sugAddressSet");
      html = '<table>';
      html = html + '<tr><td><DIV class="component EditorLabel"><LABEL class=PageTitle>Address Suggestions</LABEL></DIV></td></tr>';
      html = html + '<tr><td>&nbsp;</td></tr>';
      html = html + '<tr><td><DIV class="component EditorLabel"><LABEL class=AttentionColor>The Garage Address is incorrect. Please select one of the following options:</LABEL></DIV></td></tr>';
      html = html + '<tr><td>&nbsp;</td></tr>';
      html = html + '<tr><td>&nbsp;</td></tr>';

    个人觉得太凌乱代码可读性和可维护性太差,于是改成下面这样:

    var addhtml='<div><table><tbody><tr><td><div class="component EditorLabel"><label class="PageTitle">Address Suggestions</label></div></td></tr><tr><td>&nbsp;</td></tr><tr><td><div class="component EditorLabel"><label class="AttentionColor">The Garage Address is incorrect. Please select one of the following options:</label></div></td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr class="add1"><td><div class="component EditorRadio"><input  class="rad1" title="Please select address." value="0" type="radio" name="ASEL" onclick="CustomScript.SetAddrSugest(this);"/><span class="required"></span></div></td></tr><tr class="add1"><td>&nbsp;</td></tr><tr class="add2"><td><div class="component EditorRadio"><input class="rad2" title="Please select address." value="0" type="radio" name="ASEL" onclick="CustomScript.SetAddrSugest(this);"/><span class="required"></span></div></td></tr><tr class="add2"><td>&nbsp;</td></tr><tr class="add3"><td><div class="component EditorRadio"><input class="rad3" title="Please select address." value="0" type="radio" name="ASEL" onclick="CustomScript.SetAddrSugest(this);"/><span class="required"> </span></div></td></tr><tr class="add3"><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></tbody></table></div>';
        
        var jqdom=$(addhtml);var add1=jqdom.find(".add1").first().find("input");    
        var addsp1=jqdom.find(".add1").first().find("span");
        add1.attr("sela","2709 Old Rosebud Rd");
        add1.attr("selc","Lexington");
        add1.attr("sels","KY");
        add1.attr("selz","40509-8559");
        addsp1.text("2709 Old Rosebud Rd Lexington KY 40509-8559");
        
        var add2=jqdom.find(".add2").first().find("input");    
        var addsp2=jqdom.find(".add2").first().find("span");
        add2.attr("sela","2709 Old Rosebud Rd");
        add2.attr("selc","Lexington");
        add2.attr("sels","KY");
        add2.attr("selz","40509-8559");
        addsp2.text("2709 Old Rosebud Rd Lexington KY 40509-8559");
        
        var add3=jqdom.find(".add3").first().find("input");    
        var addsp3=jqdom.find(".add3").first().find("span");
        add3.attr("sela","2709 Old Rosebud Rd");
        add3.attr("selc","Lexington");
        add3.attr("sels","KY");
        add3.attr("selz","40509-8559");
        addsp3.text("2709 Old Rosebud Rd Lexington KY 40509-8559");

    个人感觉清晰了很多。

  • 相关阅读:
    浏览器渲染机制
    isEmpty 和 isBlank 的用法区别
    Mybatis-plus
    Java8的JVM内存结构
    【面试题】关于线程交替的面试题
    java中的final的作用
    线程池
    六种实现单例模式的方法
    SQL优化常用方法
    HTML学习笔记
  • 原文地址:https://www.cnblogs.com/wancy86/p/html_concat.html
Copyright © 2011-2022 走看看