[foo|='bar']
"Selects all elements with a [foo] attribute starting with "bar"
and
[foo^='bar']
"Selects every element whose [foo] attribute value begins with "bar"
In my application, I have inputs with IDs "Input-123456", etc.
Selecting them with input[id^="Input-"]
works, whereas input[id|='Input-']
returns nothing.
So what's the difference?