Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
Why would a form value inserted with value property won't be effective? [closed]
Closed as unclear by Alexei on Dec 1, 2021 at 13:38
This question cannot be answered in its current form, because critical information is missing.
This question was closed; new answers can no longer be added. Users with the reopen privilege may vote to reopen this question if it has been improved or closed incorrectly.
In a website I didn't build, I want to put a value in an HTML input field element with JavaScript and to also use it as-putted.
I can put it with the browser console this way:
document.querySelector("#example").value = "X";
But, the value isn't effective (isn't recognized by the form) unless actually typed with the keyboard or pasted.
What may cause that problem?
1 answer
It works fine for me.
Here's a minimal working example:
<!DOCTYPE html>
<html>
<body>
<form>
<input type="text" name="field" id="field" value="old value">
<input type="button" value="change"
onClick="document.querySelector('#field').value = 'new value';">
<input type="button" value="display"
onClick="alert(document.querySelector('#field').value);">
</form>
</body>
</html>
When I open that document in Firefox and simply click "display", "old value" is displayed in the alert popup. When I click "change" and then "display", "new value" is likewise displayed. When I manually change the value in the input text field and click "display", the value I entered is likewise displayed.
Therefore, what you are seeing is either something not mentioned at all in the question (such as perhaps a misused validation framework interfering with the update), or a bug in your browser. Take your pick as to which is more likely.
I recommend that you go back to the very basics, then work your way up to wherever the problem starts to happen. Whatever change you made last is then the cause of the problem.
2 comment threads