Я помещаю ввод внутри a-тега. И я хочу остановить ссылку при нажатии, чтобы изменить значение на входе. Как этоstopPropagation не останавливает родительское действие
HTML
<div id="contain">
<a href="http://www.stackoverflow.com" target="_blank" id="link">
<input id="clickme" type="text" value="1"></input>
Buy
</a>
</div>
JQuery
$('#clickme').focus(function(e){
e.stopPropagation();
});
$('#clickme').click(function(e){
e.stopPropagation();
});
jsfiddle: http://jsfiddle.net/GKvw3/1/
результат в том, что она по-прежнему идет в stackoverflow.com. Любые идеи, почему это так.
EDIT
Мой реальный сценарий, который я получил код, как это ниже. Теперь, что я делаю, так это то, что когда кто-то щелкнет где-нибудь внутри TR, он возьмет ссылку href. Поэтому проблема заключается в том, что отправка формы (не в разметке) приведет к ссылке .. там, где я хочу делать то, что я объяснил выше, и именно поэтому я использую вход внутри ссылки в тесте.
<table>
<tr>
<td><a href="#">headline</a></td>
...
<td><input type="submit" id="submitme" value="buy"/></td>
</tr>
</table>
Зачем вам вводить ввод в ссылку? Поместите их бок о бок, если вы используете ярлык и сохраняете функциональную функцию ввода. –
Недопустимый HTML-код для ввода элемента 'input' внутри элемента' a'. –
Ваш jsFiddle настроен на использование MooTools, а не jQuery, и не соответствует коду, опубликованному в вопросе. –