【问题标题】:Jquery show number within div in alertJquery在警报中显示div内的数字
【发布时间】:2013-05-13 03:25:52
【问题描述】:

我想在警报中的 Div 中显示数字像这样

<script> 
var sec = $('#demo').html();
alert(sec);
</script> 
<div id="demo">100</div>

代码最多显示 100 数字

但它也 null undefined zero 当我使用时

size(); , text(); , html(); , length;

编辑:我遇到了问题。我的 jquery 是 v1.7.1 这似乎有问题。所以我将我的 jquery 升级到 v1.9.1 并且我的代码工作正常。谢谢大家的回答

【问题讨论】:

  • 正如您所发布的,您已经在 &lt;div&gt; 中有一个数字,现在,“我想在 Div 中显示数字” 这很难理解且不言自明.你能改进你的问题吗?
  • 已完成。谢谢你的提醒
  • var temp = $(#demo).text() 会给你它的文本
  • 但不是。很奇怪

标签: jquery html numbers show


【解决方案1】:

设置

这种技术将设置(放置)一个数字到一个空的&lt;div id="demo"&gt;&lt;/div&gt;

$('#demo').text(100);      // Overwrite with new content
$('#demo').html(100);      // Overwrites + you can insert raw (string) HTML. 
$('#demo').append(100);    // Keeps content and appends to element
$('#demo').prepend(100);   // Keeps content and prepends to element
$('#demo')[0].textContent = "100"; // jQ/JS, Overwrite with Text Content
$('#demo')[0].innerHTML = "100";   // jQ/JS, Overwrite with HTML
document.getElementById('demo').innerHTML = 100 ; // Pure JS example

http://jsbin.com/eyuhay/10/edit

获取

这种技术将从您的&lt;div id="demo"&gt;100&lt;/div&gt;获得所需的内容(100

var number = $('#demo').text();            // jQ                  
var number = $('#demo').html();            // jQ
var number = $('#demo')[0].innerHTML;      // jQ/JS
var number = $('#demo').get(0).innerHTML;  // jQ/JS using .get(0) instead of [0]
var number = document.getElementById('demo').innerHTML;   // pure JS
var number = document.getElementById('demo').textContent; // pure JS

http://jsbin.com/eyuhay/11/edit

.size(), 长度

.size() 是一个 jQuery 方法,用于检索对象数组中的元素数量。
.length 是一个原生 JS 方法,用于获取...长度 :-D强>

另外看看:http://jsbin.com/eyuhay/6/edit

alert( number.length );      // 3, cause 100 has 3 digits
alert( $('#demo').size()  ); // 1, Use size() on Elements
alert( $('#demo').length );  // 1, cause only 1 element #ID
  • 始终将您的代码包装到document ready function

jQuery(document).ready(function( $ ) { 
    // DOM is now read and ready to be manipulated
    /* code here */
} );
  • 或将&lt;script&gt;&lt;/script&gt; 标签放在&lt;/body&gt; 之前

【讨论】:

  • 这是有用的信息,但并不能真正回答问题;显示的代码应该已经可以正常工作了(但它在错误的地方)。
  • @Jack 很好,现在我看到 OP 修改了 Q 代码。哈哈,我需要一杯咖啡 +1 给你
【解决方案2】:

您当前的代码应该可以正常工作,只是顺序错误:

<div id="demo">100</div>
<script> 
var sec = $('#demo').html();
alert(sec);
</script> 

元素应该在 DOM 中可用在您可以运行脚本之前。或者,您应该让代码作为 DOM 就绪事件处理程序的一部分运行:

<script>
$(function() {
    alert($('#demo').html());
});
</script>

【讨论】:

    【解决方案3】:

    根据澄清,问题是您的脚本需要在 dom 就绪中执行。

    <script> 
        jQuery(function($){
            var sec = $('#demo').html();
            alert(sec);
        });
    </script> 
    <div id="demo">100</div>
    

    演示:Fiddle

    【讨论】:

    • @user2198380 你想设置div中的数字还是从div中读取值
    • 我想从 div 中读取值并将其显示在警报中。我完成了我的问题
    • @user2198380 在这种情况下你必须使用alert($('#demo').text())
    • 这是关于我的 jquery 的一部分?因为我测试了你的代码,它最有效,但没有显示警报
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多