I’m trying to get value of checkbox in flask without a submit.
here is my app.py
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
if request.form.get('c_check')=="0":
print('success: 0')
checked=''
elif request.form.get('c_check')=="1":
print('success: 1')
checked='checked'
return render_template('index.html')
Here is my javascript that toggle the checkbox:
function hello(){
if (document.querySelector('input').value=='0'){
document.querySelector('input').value='1'
console.log('value 1');
}
else {
document.querySelector('input').value='0'
console.log('value 0');
}
}
And here is my index.html
<form method="post" action="">
<div class="form-check form-switch">
<input class="form-check-input btn-lg"
name="c_check"
value="0"
type="checkbox"
role="switch"
id="flexSwitchCheckChecked"
onclick="hello()"
>
<label class="form-check-label btn-lg"
for="flexSwitchCheckChecked"></label>
<input type="submit">
</div>
</form>
<script src="{{url_for('static', filename= 'js/hello.js')}}"></script>
I want to
- Remove the submit button
- When I click on the checkbox, python should receive the checkbox value, 0 or 1.
The present code only returns 1 when I click the submit button. The solution should be that I remove the submit button entirely and have python listen on the value change and print that in real time.
I’m open to socketio solution, but I don’t know how to do it.
Thank you for your help.