亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么用setAttribute不行,但是直接用屬性賦值卻可以?求解

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>無標題文檔</title>

</head>

<body>

<script type="text/javascript">

var main = document.body;

//創建鏈接

function createa(url,text)

{

? var a=document.createElement("a");??

? a.setAttribute("href","url");

? a.setAttribute("value","text");

? main.appendChild(a);

}

// 調用函數創建鏈接

createa("http://www.baidu.com","我是一條link");


</script>?

</body>

</html>


正在回答

3 回答

比如<a>JAVA</a><input value="PHP" />

<a></a>? //這是元素節點

JAVA? ? ? ?//這是文本節點

<input />? ? //這是元素節點

PHP? ? ? //這是屬性節點


setAttribute(屬性名,屬性值);

很明顯,JAVA是<a>的文本,不是屬性,無法通過value添加,只能是innerHTML。

當然,如果是<input type="text" value="" />就可以用? ?setAttribute('value','PHP');



0 回復 有任何疑惑可以回復我~
#1

走馬勿觀花

有一點錯了, PHP //是屬性節點的值 value //才是屬性節點
2020-03-23 回復 有任何疑惑可以回復我~

文本內容是innerHTML,
value想要顯示,只能在input用

這里又區分input和其他元素。

input獲取是 .value;

其他元素獲取是 .innerHTML

前面有講,可以回顧看看

1 回復 有任何疑惑可以回復我~

你給value賦值,但value是不顯示的,你要是想a標簽顯示text內容的話,那得賦值給innerHTML

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么用setAttribute不行,但是直接用屬性賦值卻可以?求解

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號