Django怎么处理一个页面好多按钮,如何知道点的是哪个按钮。
后面有一列更新的按钮,,我想知道,当我点了更新之后,服务器端怎么才能知道点的是哪一列的呢?我是不是需要向服务器POST一个值来判断,是的话,如何POST这个值呢。
html文件如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<form action="/svn/" method="POST">
<table border="1" width="80%" >
<tr>
<th>svn名称</th>
<th>本地路径</th>
<th>svn库路径</th>
<th>服务器IP</th>
<th>操作</th>
</tr>
{% for svn in svns %}
<td align="center">{{svn.svn_name}}</td>
<td>{{svn.localpath}}</td>
<td>{{svn.svnpath}}</td>
<td>{{svn.host}}</td>
<td><input type="submit" id="update" name="subsat" value="更新" class="button" ></input></td>
</tr>
{% endfor %}
</table>
<p>
</form>
</body>
</html>
python里面的view代码如下:
from blog.models import user,host,svn
from django.shortcuts import render_to_response
from django.http import HttpResponse
def svn_operate(req):
if req.method == "GET":
svns = svn.objects.all()
return render_to_response('svnlist.html',{'svns':svns})
elif req.method == "POST":
return HttpResponse("ok")
小弟刚开始接触Django,希望各位大哥可以详细指教一下,感激不尽,就剩下20积分, ,,希望不要见谅。 django
[解决办法]
全部都一样只能说那是你的失策,随便赋个不同值的属性就能区别了
其次,html语法中,id属性的值是唯一的,重复是错误的,能运行只是浏览器容错而已
当id不同,自然就能区别了
就算没有id,也能通过获取text文本来区分
总的来说,你是没想好就做,然后修修补补,这样是不行的
[解决办法]
给你个思路: 每个input里 自定义一个 data-* 的属性,然后里面的值存一些能代表当前按钮的东西,比如svn.svn_name, 或者 svn.id 然后js 对 提交时的按钮 发送data-*的数据 。
<td><input type="submit" id="update" name="subsat" value="更新" class="button" data-ids="{{svn.id}}" ></input></td>