The reason for this is that WebAuth is a layer 3 authentication method in which the devices have to associate and obtain an ip address. You will not be able to set a vlan to a guest user, because they already have an ip address assigned to them. This is the same scenario when using ISE or any other radius. You would need to send a CoA and disassociate the device, know the mac so when it attempts to associate again, the WLC will put them on the correct vlan.... doesn't work this way though.
Thanks,
Scott
*****Help out other by using the rating system and marking answered questions as "Answered"*****
-Scott
*** Please rate helpful posts ***