var str = prompt("What is your name?");
var str1=$(str).html('<b>'+str+'</b>');
alert(str1);
通過上面的代碼,我得到了[object object]
作爲輸出。請幫忙jquery輸出id顯示爲[object object]
var str = prompt("What is your name?");
var str1=$(str).html('<b>'+str+'</b>');
alert(str1);
通過上面的代碼,我得到了[object object]
作爲輸出。請幫忙jquery輸出id顯示爲[object object]
alert(str1.html());
就是你所追求的。
在jquery的每個函數返回一個jquery對象,以便
.html('<b>'+str+'</b>')
返回一個對象,而不是在元件內部的文本。
alert()。text();什麼應該警報返回?你的意思是alert(str1.text()); – DanielB 2011-05-06 08:17:30
我想你的意思是'alert(str1.text());' – 2011-05-06 08:18:15
對不起。 Updated – 2011-05-06 08:18:22
這是正確的,因爲你要設置的HTML,然後該函數返回jQuery對象
var str1=$(str).html('<b>'+str+'</b>').html();
現在STR1將有HTML字符串。
編輯: 但是,DarthJDG指出正確地將一個字符串(返回值爲prompt()
)包裝到一個jQuery對象中,並且將一些HTML元素打包成一個jQuery對象並沒有什麼意思。
陳述$(str).html('<b>'+str+'</b>');
正在設置html
的$(str)
,然後從該呼叫返回$(str)
(用於鏈接目的)。
因爲我不完全確定你想要達到的目標,所以我拒絕提出一個解決方案。你能否在你的問題上更明確一些?
我需要將提示文本轉換爲粗體並顯示到textarea框中 – bhuvana 2011-05-09 06:59:12
是的,這正是你應該期望的。通過將參數傳遞給.html()
,即可調用返回jQuery
(即對象)的方法。
相反,如果你想要回(HTML)值元素,你應該alert(str1.html())
,從而invoking the method它返回一個string。
你應該這樣做:
alert($(str).html());
你的代碼是行不通的,因爲$(str).html('<b>'+str+'</b>');
返回一個jQuery對象,而不是一個字符串。
乾杯
首先,讓我們來看看了html()
jQuery的API中:
它有兩個變化。如果你傳遞一個參數,方法簽名是這樣的:
.html(htmlString) Returns: jQuery
所以它返回一個jQuery
對象。對象沒有任何有趣的內容顯示在警報內。現在,你可以用代表DOM節點的jQuery對象做什麼?那麼,你可以read back their HTML code:
alert(myNode.html());
...或者你可以read their plain text value:
alert(myNode.text());
現在,讓我們看看你的代碼:
var str = prompt("What is your name?");
由於prompt()返回一個字符串(如果用戶鍵入的東西,打OK)或null
(如果用戶擊中取消),str
將是任意字符串或null
。
var str1=$(str)
你正在用任意字符串調用jQuery,所以你會得到一個任意的jQuery對象。如果用戶輸入john
,您將運行$("john")
。這意味着:匹配包含<john></john>
標籤的任何元素。如果用戶輸入<h1>Hi</h1>
,您將創建第一級標題。等等...
.html('<b>'+str+'</b>');
現在你選擇任何你在第一步中獲得,並告訴jQuery來其HTML更改爲某個任意內容:.html("<b>john</b>")
或.html("<b><h1>Hi</h1></b>")
...
alert(str1);
.. 。到目前爲止我們沒有什麼有趣的東西;-)
Alvaro,感謝這麼長的響應!我正在尋找一些能夠將jQuery對象轉換爲帶有超鏈接的html表格,這些超鏈接深入瞭解jQuery對象中的方法和對象。 – 2011-06-11 16:25:41
你究竟想要達到什麼目的? – DarthJDG 2011-05-06 08:15:02
jQuery適用於HTML/DOM,而不是任意字符串... – 2011-05-06 09:31:52