Modifying Attributes

Modern JavaScript Manipulating HTML Pages
8 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€96.21
List Price:  €134.70
You save:  €38.49
£79.93
List Price:  £111.90
You save:  £31.97
CA$143.79
List Price:  CA$201.32
You save:  CA$57.52
A$160.48
List Price:  A$224.69
You save:  A$64.20
S$135.83
List Price:  S$190.17
You save:  S$54.33
HK$777.07
List Price:  HK$1,087.93
You save:  HK$310.86
CHF 89.45
List Price:  CHF 125.24
You save:  CHF 35.78
NOK kr1,141.95
List Price:  NOK kr1,598.78
You save:  NOK kr456.82
DKK kr717.64
List Price:  DKK kr1,004.72
You save:  DKK kr287.08
NZ$177.52
List Price:  NZ$248.53
You save:  NZ$71.01
د.إ367.25
List Price:  د.إ514.17
You save:  د.إ146.91
৳11,994.74
List Price:  ৳16,793.12
You save:  ৳4,798.37
₹8,496.63
List Price:  ₹11,895.62
You save:  ₹3,398.99
RM450.75
List Price:  RM631.07
You save:  RM180.32
₦155,628.43
List Price:  ₦217,886.03
You save:  ₦62,257.60
₨27,934.96
List Price:  ₨39,110.06
You save:  ₨11,175.10
฿3,444.45
List Price:  ฿4,822.37
You save:  ฿1,377.92
₺3,518.54
List Price:  ₺4,926.10
You save:  ₺1,407.55
B$617.53
List Price:  B$864.57
You save:  B$247.04
R1,837.80
List Price:  R2,572.99
You save:  R735.19
Лв188.31
List Price:  Лв263.64
You save:  Лв75.33
₩144,872.25
List Price:  ₩202,826.95
You save:  ₩57,954.69
₪364.89
List Price:  ₪510.86
You save:  ₪145.97
₱5,883.01
List Price:  ₱8,236.45
You save:  ₱2,353.44
¥15,672.80
List Price:  ¥21,942.55
You save:  ¥6,269.75
MX$2,028.91
List Price:  MX$2,840.56
You save:  MX$811.64
QR366.34
List Price:  QR512.89
You save:  QR146.55
P1,382.59
List Price:  P1,935.69
You save:  P553.09
KSh12,923.70
List Price:  KSh18,093.70
You save:  KSh5,170
E£5,091.27
List Price:  E£7,127.98
You save:  E£2,036.71
ብር12,764.56
List Price:  ብር17,870.89
You save:  ብር5,106.33
Kz91,790.82
List Price:  Kz128,510.82
You save:  Kz36,720
CLP$99,155.08
List Price:  CLP$138,821.08
You save:  CLP$39,666
CN¥729.81
List Price:  CN¥1,021.77
You save:  CN¥291.95
RD$6,104.52
List Price:  RD$8,546.58
You save:  RD$2,442.05
DA13,454.60
List Price:  DA18,836.98
You save:  DA5,382.37
FJ$232.11
List Price:  FJ$324.96
You save:  FJ$92.85
Q773.21
List Price:  Q1,082.52
You save:  Q309.31
GY$21,000.46
List Price:  GY$29,401.48
You save:  GY$8,401.02
ISK kr13,903.60
List Price:  ISK kr19,465.60
You save:  ISK kr5,562
DH1,007.40
List Price:  DH1,410.40
You save:  DH403
L1,841.78
List Price:  L2,578.57
You save:  L736.78
ден5,922.50
List Price:  ден8,291.74
You save:  ден2,369.23
MOP$803.42
List Price:  MOP$1,124.82
You save:  MOP$321.40
N$1,834.70
List Price:  N$2,568.66
You save:  N$733.95
C$3,694.32
List Price:  C$5,172.20
You save:  C$1,477.87
रु13,665.58
List Price:  रु19,132.35
You save:  रु5,466.77
S/374.71
List Price:  S/524.60
You save:  S/149.89
K406.86
List Price:  K569.63
You save:  K162.76
SAR375.72
List Price:  SAR526.02
You save:  SAR150.30
ZK2,777.96
List Price:  ZK3,889.25
You save:  ZK1,111.29
L478.81
List Price:  L670.35
You save:  L191.54
Kč2,418.25
List Price:  Kč3,385.65
You save:  Kč967.40
Ft39,800.47
List Price:  Ft55,722.25
You save:  Ft15,921.78
SEK kr1,103.66
List Price:  SEK kr1,545.17
You save:  SEK kr441.50
ARS$102,190.76
List Price:  ARS$143,071.15
You save:  ARS$40,880.39
Bs693.61
List Price:  Bs971.08
You save:  Bs277.47
COP$437,799.12
List Price:  COP$612,936.28
You save:  COP$175,137.16
₡50,480.33
List Price:  ₡70,674.48
You save:  ₡20,194.15
L2,548.03
List Price:  L3,567.35
You save:  L1,019.31
₲784,126.06
List Price:  ₲1,097,807.85
You save:  ₲313,681.79
$U4,460.41
List Price:  $U6,244.75
You save:  $U1,784.34
zł409.96
List Price:  zł573.96
You save:  zł164
Already have an account? Log In

Transcript

We have spent several videos looking at how you can select HTML elements, and also how to traverse those elements in the DOM. As a part of those exercises, we've also changed some of the HTML attributes. Well, in this video, we want to summarize what we have done in changing those HTML attributes. And then add a little bit more information. So first, let's summarize. dot notation is the easiest way to read the value of an HTML attribute or write to an HTML attribute.

And so that is the technique that we've used so far. Because it is so simple to do, you grab the node, and then you simply put a dot and then the name of the HTML attribute. For example, we've done that Some like this with images, we've accessed the src attribute, which is the source. And we've changed the image using that attribute. For a tags when after we've selected the a node, and placed it in a variable, then we use dot notation to access the href attribute, which is the link when that is clicked on, that's the page it goes to. We've also access the class attribute by selecting the node and using dot notation to get to the class and, and the style attribute.

Now with this style, it in and of itself consists of multiple attributes that we can change. Therefore, we grab the node dot style, then dot the CSS attribute that we want to change. So those are some examples that we've already done. Now, some HTML attributes are reserved JavaScript keywords. For example, the class attribute, if you remember, we had to enter class name. So in the example in the previous line, no class would not work, we'd have to enter no class name to make that change, because class is a JavaScript reserved word.

Now, in forms, another example would be in forms, the individual elements of a form can have a four attribute. Now for is obviously a reserved JavaScript word because we use it in the for loop. Therefore, we wouldn't be able to access that either. We could do it with the dot notation using node dot html for and that would work. Another way to access these HTML attributes that are also reserved JavaScript. Words is with some functions that have been provided.

So let's take a look at those. Now just be aware as we take a look at these functions, you don't have to only use these with reserved words. You could use them for any HTML attribute. If you prefer to use these methods that have been provided, then go ahead and do so. Let's take a look at what they are there for total. The first one is get attribute so once we select the node, we can use get attribute and then inside of parentheses, we put the HTML attribute as a string.

That will resolve and return the value of that attribute. Set attribute allows us to change that attribute. Inside of parentheses we put the attribute name as a string value and we put the value it should be set to as a string We can also check to see if that attribute even exists on the node. Say we select a node and we're not sure if that attribute is a part of it or not. Well, we can use has attribute to select that. And that can be valuable for all types of attributes, not just the reserved keyword attributes.

And finally, if we want to, we can remove the attribute, that's a great way to simply take the attribute away from the node that we are working with. All right, let's look at some examples. So we'll go to our same selecting exercise HTML page. And then I will open up the console. And let's take a look at some of these. First, let me dock the console on the bottom because we will be changing some things so it'll be nice to be able to see that change happen.

So first, let's use or Let's set a variable node equal to query selector I'm going to use query selector because I just want to select the first element that matches this criteria. And I'm going to select an element that has the class bullet blue, therefore I use the.as specifies class. And all three of those span tags, if you may remember the ID, the tag and the CSS class. The reason there are different colors because they are enclosed within a span tag, and then we have a class associated with it. So we'll grab the first one here. And now if I display node, I can see that I've got the first one.

All right. Now let's just check to see if that node has the attribute class. And it returns a true so this is going to return a true or false so you could use this as part of an IF conditional if you needed to check to see If the attribute exists, could simply use has attribute for that. Now let's get the attribute value. Let's return that to a variable. So I'm going to set node class equal to node dot get attribute.

And then inside of quotes, I'll put class as the attribute I want to retrieve. And then if I display the variable, I can see that it retrieved the value of the class attribute, which happens to be bullet blue. Now let's change that. lets you set attributes. That's really going to change this class and we're going to change it to bullet red. Now this class is already defined, and it should cause the ID to be red as opposed to blue.

Go ahead and press return. And sure enough, as you can see, Id changed to red. All right, one more. We're going To look at, and that is the Remove attribute. Now what do you expect should happen? When we remove the attribute and attribute, we want to remove his class, we have to specify which attribute we want to remove.

Well, the color should be completely removed, right? Because if we remove that attribute if we remove class from that span tag, there's no longer anything to define it. Therefore, it should be the same as the rest of the text. So we press return. Sure enough that removed it. So we've looked at has attribute get attribute set attribute and remove attribute.

Those can be used with any HTML attribute as you're trying to change a node. But they weren't especially great with HTML attributes that are also JavaScript reserved words. All right, let's move on to the next topic.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.