I have 2 fields(State and Country) in website form.
Can anybody help me, how to add dynamic domain to filter State based on Country.
How to achieve it??
Will onchange event work?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
I have 2 fields(State and Country) in website form.
Can anybody help me, how to add dynamic domain to filter State based on Country.
How to achieve it??
Will onchange event work?
Hi,
You can try like this
XML:-
<div class="col-12 col-sm-12 col-md-6 col-lg-6 py-3">
<label class="se-form-label"
for="country_id">
Country
</label>
<select name="country_id"
id="country_id"
class="form-control se-form-control">
<option selected="1"
disabled="1">
Select Country
</option>
<t t-foreach="countries or []"
t-as="country">
<option t-att-value="country.id">
<t t-esc="country.name"/>
</option>
</t>
</select>
</div>
<div class="col-12 col-sm-12 col-md-6 col-lg-6 py-3">
<label class="se-form-label"
for="state_id">
State
</label>
<select name="state_id"
id="state_id"
class="form-control se-form-control">
<option selected="1"
disabled="1">
Select State
</option>
<t t-foreach="states or []"
t-as="state">
<option t-att-value="state.id"
t-att-data-country_id="state.country_id.id">
<t t-esc="state.name"/>
</option>
</t>
</select>
</div>
JS:-
$("select[name='country_id']").change(function(){
var $select_state = $("select[name='state_id']");
$select_state.find("option:not(:first)").hide();
var nb = $select_state.find("option[data-country_id="+($(this).val() || 0)+"]").show().length;
$select_state.val(0);
});
Regards
Create an account today to enjoy exclusive features and engage with our awesome community!
Üye Olİlgili Gönderiler | Cevaplar | Görünümler | Aktivite | |
---|---|---|---|---|
|
3
Tem 15
|
10935 | ||
|
0
May 15
|
5524 | ||
|
0
Nis 23
|
442 | ||
|
2
May 25
|
9653 | ||
|
3
Mar 24
|
5259 |