我的问题更多的是关于如何实现一件事的最佳方法/实践。让我们假设我有可能为JQuery创建一个html代码来检索一些文本值。最好的方法是什么?
我知道你可以使用get by id等获取一个值,所以基本上我可以使用唯一ID创建自己的div,并通过JQuery检索其中的一些值。但这是好方法吗?当然,另一件事是人们不应该看到价值。
也许我应该将值作为属性?关键,价值对?并通过id获取元素并获取属性?
那么任何建议,在页面上存储一个值并轻松检索它的最佳方法是什么?
提前致谢
更新:
一个例子: 我做了以下事情:
<div id="uniqueID" style="display:none"> Value which in need </div>
这是一些解决方案,然后我只需要用JQuery检索这个值,简单。 但我想知道的是有更好的方法,也许HTML中有一些特殊的标签,或者其他人喜欢的东西等......
通过jquery,我只想说:
$("#uniqueId").val()
并且不应该有任何更复杂的特征简单,不知道它可能是如此不清楚。
答案 0 :(得分:1)
如果您只是希望您的服务器在您的页面中嵌入一个您可以在javascript中检索的查看器不可见的值,您也可以让您的服务器直接将值放入javascript变量中。如果你只是在javascript中需要它,没有理由把它放在DOM中。
例如,您可以将它放在您的页面中:
<script>
var myValueSetByServer = "foo";
</script>
然后,您只需在页面javascript中的任意位置访问myValueSetByServer
即可。没有必要把它放在div或属性或类似的东西上。
如果你有很多这些,你可以定义一个对象,并使你的值都是对象的属性:
<script>
var myServerValues = {prop1: "foo", prop2: "whatever", user: "fred", type: "person"};
</script>
当然,还有许多其他方法可以在实际页面中存储内容,就像你提到的那样,包括DOM节点上的数据属性,隐藏DOM节点的文本值等等......但没有一种方法像如果你只想使用javascript中的值,只需将值放在javscript变量中。
答案 1 :(得分:1)
您可以将所需的值添加为
等属性 <div id="smth" data-you-need="value"></div>.
然后得到它
$('#smth').attr('data-you-need')
答案 2 :(得分:0)
执行此操作的一种方法是在服务器上安装一个PHP页面,如下所示:
<?php print "topsecretvalue" ?>
并使用AJAX加载它。
但是,如果您只是希望它不显示在可见页面上,并且如果您对通过查看源代码可以相对容易地找到它的事实感到满意,那么只需设置一个变量在第一个脚本标记顶部的Javascript中,并在需要时使用它。不需要把它放在DIV的某个地方!