Div1.InnerHtml = (someString);
-VS-
Div1.InnerHtml += (someString);
我注意到他们都做同样的事情,但我是否有任何真正的区别+
?另外.. & 和
有什么区别?InnerText
InnerHtml
+=
将附加(someString)
到 的现有值Div1.InnerHtml
,而=
将用替换的值。Div1.InnerHtml
(someString)
如果结果相同,则 的起始值Div1.InnerHtml
很可能是null
( )string.Empty
""
关于InnerText
vs InnerHtml
: InnerHtml
可能会返回类似<h1>Hello World</h1>
whileInnerText
会返回的东西Hello World
(没有实际 HTML 元素的元素的值)。
考虑以下情况:
string someString = "Hello";
string innerHtml = "";
innerHtml += someString; // result will be "Hello"
string someString = "Hello";
string innerHtml = "";
innerHtml = someString; // result will be "Hello"
string someString = "Hello";
string innerHtml = "World";
innerHtml += someString; // result will be "HelloWorld"
string someString = "Hello";
string innerHtml = "World";
innerHtml = someString; // result will be "Hello"
第一个问题的答案
C# String Append -: += 用现有字符串追加字符串
另一个例子是
string s = "abc";
s+="cde";
output
s = "abcde"
第二个问题的答案
innerText 将按原样检索值,但如果它包含标记,它将按原样呈现文本,而 innerHTML 通过应用 HTML 标记(如果有)来检索值。
它们根本不是一回事。这是关于字符串操作,而不是与 ASP.NET 相关的特定内容
。第一个将 someString 放在 Div1 的字符串属性 InnerHtml 中,
第二个将 InnerHtml 设置为 InnerHtml +(someString),例如,如果 InnerHtml 包含字符串“aa " 在此操作之前,后一种情况下将变为“aaSomeString”,前一种情况下将变为“SomeString”。
他们只是在做同样的事情,因为当你做 += 时 Div1 是空的
+= 是附加的,所以如果你连续几次这样做,你会看到你得到了你可能没有预料到的数据。
赋值运算符 (=) 将简单地将 Div1 的值设置为左侧的任何值,而不管之前的值是什么。
+=
是连接(a = a + b 的缩写)
=
将用右侧的新值覆盖该值
innerHtml
将允许您添加标签,如<p>
和div
innerText
将这些标签编码为<p>
和<div>
+=
是速记运算符
例如
i = i + (some value) and i+=(some value) both is same.
所以,一般来说,
Left_Val (operator)= right_val and Left_Val = Left_Val (operator) right_val are same
请注意,运算符应该是二进制的。速记运算符不能与一元(如一元减号)和三元运算符(如?:)一起使用。