【问题标题】:Conditional HTML need suggestion条件 HTML 需要建议
【发布时间】:2011-04-25 14:38:50
【问题描述】:

这两种情况哪个更好。只是确保我使用的是最佳实践。

<% if(isEdit){ %>
<input type="text" id="tabtitle" name="title" value=<%=Content%>/>
<%}else{%>
<input type="text" id="title" name="title"/>
<%}%>

 $(document).ready(function() { 
<% if(isEdit){ %>
   $("#title").val("<%=Content%>");
<%}%>
});

【问题讨论】:

  • 我会亲自标记问题“java jsp javascript jquery”。
  • 远远优于 其中一个 的解决方案根本不涉及任何“scriptlet”,而是使用 JSTL/EL。

标签: javascript jquery conditional dynamic-html


【解决方案1】:

第二种使用JavaScript/JQuery 来修改元素。由于添加客户端代码没有任何优势,我将采用第一种方法,即仅在服务器端。虽然没有看到更大的图景,但也很难认可这种方法。

【讨论】:

    【解决方案2】:

    我会采用第一种方法,因为条件仍然存在,并且 javascript 不会向功能添加任何内容。这只是一种强制方法。

    此外,如果您使用服务器端,您的代码在访问浏览器时将是正确的,并且调用 javacsript 函数不会有延迟。当你通过 javascript 更改 dom 时,有时会出现闪烁或擦除...没有它你会更好。

    【讨论】:

      【解决方案3】:

      我更喜欢第一种方法,因为出于安全原因,某些用户通常会禁用 Javascript

      【讨论】:

      • 不担心这实际上是因为我的网站上到处都是 java 脚本。我想不出没有 javascript/jquery 的网站。
      • 这不是黑白的。有一个不引人注目的 Javascript 的概念,它确保如果您的浏览器不支持 Javascript,它会回退到普通的旧 html。这是 Web 堆栈的优点之一。 HTML、CSS 和 Javascript 彼此如此分离,以至于如果其中一个失败了,其余的都可以发挥作用。因此,现在当您实际上是使用 Javascript 的内容时,您根本不会向没有 Javascript 的用户显示任何信息。没有优雅的退化。阅读几周前 Gawker.com 如何使用相同的策略搞砸他们的网站设计。只是我的 2 美分。
      【解决方案4】:

      我会接受 Pointy 的建议,并在您的 JSP 中使用表达式语言 (EL)。你可以说:

      <input type="text" id="${titleid}" name="title" value="${Content}"/>
      

      将您的 titleid 属性设置为“title”或“tabtitle”,将 Content 设置为“”或您的内容。我还没有测试过它,但我相信它会完成同样的事情。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-08
        • 1970-01-01
        • 1970-01-01
        • 2011-12-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多