如何选择框值可以在django中改变
how to select box value can be change in django?
我有两个选择框一个是country
,另一个是state
。这两个值都可以访问数据库。我已经选择了国家选择框,然后自动更改与该国家选择框相关的另一个选择框值。
示例:我选择国家印度,然后自动获取另一个选择框的值状态。我正在使用ajax获取值。
def constituency1(request):
country= Loksabha.objects.values('country_name').distinct('country_name')
terms = Loksabha.objects.values('lok_sabha').distinct('lok_sabha')
states=Loksabha.objects.values('state_name').distinct('state_name')
if 'p1' in request.GET and request.GET['p1']:
p1 = request.GET['p1']
states=Loksabha.objects.values('state_name').distinct('state_name').filter(country_name='p1')
if 'p2' in request.GET and request.GET['p2']:
p2 = request.GET['p2']
state_filter = Loksabha.objects.filter(state_name=p1,constituency_name=p2)
你需要使用一点AJAX/JQuery。
#models.py
class Country(models.Model):
country = models.CharField(max_length=20)
class State(models.Model):
state = models.Charfield(max_length=20)
country = models.ForeignKey(state)
#views.py
def filter (request):
try:
kwargs = {smart_str('country'): request.GET['q']}
except KeyError:
raise Http404
qs = State.objects.filter(**kwargs).values('pk', 'name')
response = HttpResponse(
content=dumps(list(qs)),
mimetype='application/json'
)
return response
#urls.py
urlpatterns = patterns('',
url(r'^locations/filter/state-by-country/$', 'filter', name='state_filter')
...
)
添加到你的模板
//JQuery chained select plugin
$(function() {
$('#id_state').chainedSelect({
parent: '#id_country',
url: 'locations/filter/find-by-country',
value: 'id',
label: 'name'
});
});
这个问题已经被问过好几次了。
一个例子是:格式
的条件字段我是这样做的:1)创建js脚本,在select change时触发GET请求。
2)在视图中,您传递请求。GET to form,而不是request。邮报》
3)在form init方法中,你更新第二个字段的可能值-参见示例。
相关文章:
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 在javascript点击事件中调用django-urls
- Django: AJAX + CSRF POST gives 403
- 我的django模板布尔变量是't在javascript中按预期工作
- jQuery:当屏幕大小改变时,如何更改默认图像和悬停图像
- django模板没有在AJAX发布后重新加载
- jsi18n-django.catogue没有'不包含任何已翻译的字符串(但是djangojs.mo包含)
- 为什么使用immutableJS我的状态没有改变
- 设计Django中当前导航菜单项的样式
- JavaScript改变了双方的显示风格
- Django可以'不能在设置中导入ckeditor,但可以在shell中导入
- 改变所有<td>为特定的桌子点击颜色
- 如何在不使用ajax的情况下将pair值添加到数组并发送到django中的视图
- 变量dos'即使我可以返回更新后的值,也不会改变
- Django'支持Javascript文件中的翻译
- jQuery更改变量值
- Django导航:扩展与innerHTML
- 为什么datetime.strptime在使用Django运行时会抛出错误
- 爆米花改变来源
- 如何选择框值可以在django中改变