在jQuery中使用ID更改文本

时间:2015-01-26 20:11:22

标签: javascript jquery

我想使用jQuery更改<b>标记中的一行文本,但它似乎不起作用。

var status = false;

function updateStatus{$(document).ready(function(){
	if (status == false){
		$('#status').text('Text');
		$('#status').css("color","green");}
	if (status == true){
		$('#status').text('Text');
		$('#status').css("color","red");}
})}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="assets/js/status.js"></script>

<b id="status"></b>

2 个答案:

答案 0 :(得分:1)

您没有像预期的那样使用jQuery库。你有一个文档就绪的回调处理程序是在你永远不会调用的函数内部定义的,并且会出现一些语法错误。你应该把修改文本的逻辑放在它自己独立的函数中,远离任何事件处理程序,然后调用文档准备好后的那个功能。试试这个:

    var status = false;
    
    function updateStatus() { // you were missing "()"
    	if (status == false) { // no need for two separate if-statements
    		$('#status').text('Text');
    		$('#status').css("color","green");
        } else {
    		$('#status').text('Text');
    		$('#status').css("color","red");
        }
    }

    // Define ready-handler
    $(document).ready(function() {
        // call your update function
        updateStatus();
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<b id="status"></b>

答案 1 :(得分:0)

首先,你在函数声明中缺少(),其次你没有调用函数。

这是错误代码:

function updateStatus{ //should be function updateStatus(){

虽然您可以这样使用:

var status = false;

function updateStatus(){//declare a function
    if (status == false){
        $('#status').text('Text');
        $('#status').css("color","green");
    }
    if (status == true){
        $('#status').text('Text');
        $('#status').css("color","red");}
    }
}

$(document).ready(function(){
    updateStatus();//call the function when DOM is ready
});