获取锚标签的动态值
Get the dynamic value of anchor tag
注意:我已经 post 编辑了以下内容作为对其中一个问题 () 的回答,但是有一个小问题。所以 post 再试一次。这不是任何现有线程的副本
我想使用 Tornado 实现以下目标,html,javascript -
单击 link(锚标记){具有动态生成的值 - {{d[0]}},来自 MySQL 数据库 (id)。},我应该能够获取 id 值(比如 100)并将其发送到龙卷风控制器并使用逻辑提取与该 id 相关的所有详细信息。
id -------- 注
100 ----- 注意 100
101 ----- 关于 101 的注释
第 1 步 -
a href = "TornadoHandlerPath"
会将其作为默认的 Get 方法发送,但我希望使用 Post 方法发送它。
所以我按照这个 link - http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml
在表单中包含方法 post。所以我的新锚标签看起来像这样
a href="javascript: submitForm()" id="id" name="id">
{{d[0]}} </a>
第 2 步 - 我在锚标记上方 html 中添加了一个隐藏字段
<input type="hidden" name="cid" id="cid">
并且在 javascript 函数中我得到了 id 的值并将它分配给隐藏字段。
因此,当提交表单时,id 将与 post 请求一起发送。
function submitForm() {
var id = $("#id").html();
var hidden = document.getElementById("cid");
hidden.value = id;
var form = document.getElementById("form");
form.submit();
}
在 Tornado Handler 中,我用 self.get_argument("cid") 捕获了它并继续进行逻辑实现。
此方法中存在故障。即使我点击不同的 id 说 103,它仍然只显示 id 100 的详细信息!!这是因为我正在根据 id 提取数据。并且所有行都具有相同的 ID。
我尝试使用
var id = $(this).closest('td').html(), but it dint work.
完整代码在这里-
$('.alink').on('click', function() {
var id = $(this).closest('td').html();
var hidden = document.getElementById("cid");
hidden.value = id;
var form = document.getElementById("form");
form.submit();
});
HTML
<td>
<form name="form" id="ft" action="/TornadoHandler" method="Post">
<input type="hidden" name="cid" id="cid">
<a href="javascript: submitForm()" class="alink" id="id" name="id"> {{d[0]}} </a>
</form>
</td>
我卡在这里好久了。请帮助我!!
可以使用数据属性来移动数据around.no需要隐藏字段,直接放在锚标签上即可
function submitForm(thelink){ alert(thelink.getAttribute('data-info'));
}
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 1"class="alink" id="configid" name="configid"> 1 </a>
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 2"class="alink" id="configid" name="configid"> 2 </a>
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 3"class="alink" id="configid" name="configid"> 3 </a>
注意:我已经 post 编辑了以下内容作为对其中一个问题 (
我想使用 Tornado 实现以下目标,html,javascript -
单击 link(锚标记){具有动态生成的值 - {{d[0]}},来自 MySQL 数据库 (id)。},我应该能够获取 id 值(比如 100)并将其发送到龙卷风控制器并使用逻辑提取与该 id 相关的所有详细信息。
id -------- 注
100 ----- 注意 100
101 ----- 关于 101 的注释
第 1 步 -
a href = "TornadoHandlerPath"
会将其作为默认的 Get 方法发送,但我希望使用 Post 方法发送它。
所以我按照这个 link - http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml
在表单中包含方法 post。所以我的新锚标签看起来像这样
a href="javascript: submitForm()" id="id" name="id">
{{d[0]}} </a>
第 2 步 - 我在锚标记上方 html 中添加了一个隐藏字段
<input type="hidden" name="cid" id="cid">
并且在 javascript 函数中我得到了 id 的值并将它分配给隐藏字段。
因此,当提交表单时,id 将与 post 请求一起发送。
function submitForm() {
var id = $("#id").html();
var hidden = document.getElementById("cid");
hidden.value = id;
var form = document.getElementById("form");
form.submit();
}
在 Tornado Handler 中,我用 self.get_argument("cid") 捕获了它并继续进行逻辑实现。
此方法中存在故障。即使我点击不同的 id 说 103,它仍然只显示 id 100 的详细信息!!这是因为我正在根据 id 提取数据。并且所有行都具有相同的 ID。
我尝试使用
var id = $(this).closest('td').html(), but it dint work.
完整代码在这里-
$('.alink').on('click', function() {
var id = $(this).closest('td').html();
var hidden = document.getElementById("cid");
hidden.value = id;
var form = document.getElementById("form");
form.submit();
});
HTML
<td>
<form name="form" id="ft" action="/TornadoHandler" method="Post">
<input type="hidden" name="cid" id="cid">
<a href="javascript: submitForm()" class="alink" id="id" name="id"> {{d[0]}} </a>
</form>
</td>
我卡在这里好久了。请帮助我!!
可以使用数据属性来移动数据around.no需要隐藏字段,直接放在锚标签上即可
function submitForm(thelink){ alert(thelink.getAttribute('data-info'));
}
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 1"class="alink" id="configid" name="configid"> 1 </a>
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 2"class="alink" id="configid" name="configid"> 2 </a>
<a href=""onclick="javascript: submitForm(this)" data-info="hello from data attribute 3"class="alink" id="configid" name="configid"> 3 </a>