2009-11-19 230 views
0

我想用javascript改變一個元素的值。這爲什麼不工作?

<span id="mixui_title">Angry cow sound?</span> 


<script type="text/javascript"> 
$("#mixui_title").val("very happy cow"); 
</script> 
+0

你怎麼觸發這個改變? – 2009-11-19 19:56:32

+0

@Virat本例中不需要觸發器。 – 2009-11-19 22:52:31

+0

問題標題可能會更好... – 2009-11-19 22:53:36

回答

3

使用文本方法來代替:

$("#mixui_title").text("very happy cow"); 
2

嘗試html()函數:

<span id="mixui_title">Angry cow sound?</span> 

<script type="text/javascript"> 
$("#mixui_title").html("very happy cow"); 
</script> 
+0

這裏的文字可能更合適。但是,再一次,這可能會削減頭髮。如果腳本放置在頁面中的元素之後,則不需要 – 2009-11-19 22:52:00

-1

它不是由

$(document).ready(function(){ 
    //your code goes here 
}); 
+0

,例如提交者示例 – 2009-11-19 22:49:36

1

兩件事封閉:

1- Usualy,JavaScript放置在頁面的頂部。如果你這樣做,將來,你需要需要括在了jQuery等價的document.ready的:

$(function() { 
// do stuff 
}); 

這告訴了jQuery儘快運行功能的文件已準備就緒。

2-對於兩個打開/關閉標記之間的任何值,需要使用jQuery方法.html(「輸入文本以更改」),而.val()方法用於更改任何控件的值屬性值=「」喜歡的輸入:

<input type="submit value="This will be changed with val()" /> 

以下應該可以正常工作。注意它包裝在$(function(){});並使用.html()屬性並放置在頁面的頂部。

<script type="text/javascript"> 
$(function(){ 
    $("#mixui_title").html("very happy cow"); 
}); 
</script> 

<span id="mixui_title">Angry cow sound?</span> 
+0

實際上,出於性能原因,JavaScript應放置在頁面的底部。請參閱:http://developer.yahoo.com/performance/rules.html#js_bottom – 2009-11-19 22:49:13

+0

JavaScript通常應放置在頁面底部以增加頁面渲染時間。請參閱:http://developer.yahoo.com/performance/rules.html#js_bottom – 2009-11-19 22:49:15

+0

@Josh Hinman很好玩 – 2009-11-19 22:49:53