问问题
315 次
7 回答
2
丑陋,但使用隐藏的表单域:
<input type="hidden" id="clickedname" name="" value="" />
和
<a class="button" name="cancel" href="javascript:" onclick="$('#clickedname').value = this.name; $('#frmCompose').submit();">Cancel</a>
^^^^^^^^^^^^^^^^^^^^^^^^^
调整名称/值分配以适应 - 我不记得图像输入是如何提交自己的。
于 2012-08-29T19:47:12.793 回答
2
例如,您需要使用 JS 将值放入隐藏字段以进行提交,然后提交。
我建议编写一个微小的实用函数来替换您的onclick
属性值。更好的是,在 DOM 准备好后附加功能,并保持不显眼和本地化。
<a class="button" href="#" onclick="submit('cancel')">Cancel</a>
并submit
按照您的期望完成,填写隐藏字段并提交表单。如果您真的根本无法更改后端,那么您也可以更改隐藏字段的名称,但是,呃;似乎更改后端以检查“操作”字段或更清洁的东西。
于 2012-08-29T19:48:13.197 回答
1
如果添加 name="cancel" 不起作用,听起来您可能需要对您的 javascript 有点花哨。就像是:
<input type="hidden" name="placeholder" value="true" />
<a class="button" name="cancel" href="javascript:" onclick="$(this).prev().attr('name', 'cancel'); $('#frmCompose').submit();">Cancel</a>
于 2012-08-29T19:48:31.000 回答
1
只有表单元素(<input>
、<button>
、<textarea>
、<select>
等)向表单提交值。要让<a>
标签这样做,您必须使用 JavaScript 将值添加到表单中。
一种方法是添加隐藏的表单元素,并设置其名称/值。
<a class="button" name="cancel" href="#">Cancel</a>
<input type="hidden" id="buttonClicked" />
然后使用 JavaScript (jQuery):
$(function(){
$('a.button').click(function(e){
e.preventDefault();
$('#buttonClicked').prop({
name: $(this).prop('name'),
value: $(this).prop('name')
});
$('#frmCompose').submit();
});
});
于 2012-08-29T19:49:42.543 回答
1
您可以将单个隐藏字段添加到表单
<input type="hidden" id="action" value=""/>
然后在onclick中设置action的值
$("#action").attr("name","---ActionHere---");
所以取消变成:
<a class="button" href="javascript:" onclick='$("#action").attr("name","cancel");$("#frmCompose").submit();'>Cancel</a>
发送变为:
<a class="button" href="javascript:" onclick='$("#action").attr("name","send");$("#frmCompose").submit();'>Send</a>
希望这可以帮助
于 2012-08-29T19:52:18.947 回答
0
我认为最简单的方法就是<input type="hidden" />
使用您想要的名称创建一个,如下所示:
<input type="hidden" name="cancel" />
<a class="button" href="javascript:" onclick="$('#frmCompose').submit();">Cancel</a>
于 2012-08-29T19:54:49.173 回答
0
可能你不需要使用<a>
?
html:
<button class="alike">Test</button>
<a href="#">Test</a>
CSS:
button.alike,a {
border: 0px;
text-decoration: underline;
color: #00E;
width: auto;
cursor: pointer;
background-color: inherit;
font-family: 'Times New Roman';
font-size: 16px;
}
于 2012-08-29T20:07:55.813 回答