Jeditable 元素不响应生成的点击
Jeditable element not responding to generated click
我正在尝试使用 jQuery Jeditable 字段旁边的图标。这个想法是用户可以点击电子邮件地址本身或图标,文本将变得可编辑。 目前,如果您单击文本,电子邮件地址将变为可编辑状态,但如果您单击图标,则不可编辑。
<label>
<input type="radio" name="preview_source" value="email" checked>
<span id="id_preview_email_address_container" class="clickable" style="display: inline;">
the person
<span id="id_preview_email_address" class="editable">{{ preview_email }}</span>
<i class="icon-pencil jeditable-activate clickable"></i>
</span>
</label>
我正在使用以下函数来侦听铅笔图标的点击,这会在电子邮件地址文本上生成点击事件:
$('.jeditable-activate').click(function () {
$(this).parent().find('.editable').click();
// I know this is a bit clunky, but this is part of a large and
// complicated template system, so I can't easily simplify this
// selection without having to edit 20+ other files
});
我添加了一些 console.log() 来检查侦听器是否正常工作;我可以确认点击图标肯定会在电子邮件地址文本上生成 click() 事件——它只是没有给我输入字段。我试图修改一些建议的解决方案 here 但没有成功。我也尝试过通常的'wrap it in a $(document).ready()
'但是一次没有解决它!
关于 <label>
标签的一些事情意味着 jeditable 插件没有按预期工作。图标上的点击正在注册,文本正在进入输入字段,但 <label>
元素只是再次将其翻转回文本。不知道为什么点击文本本身有效。
为了解决这个问题,我像这样更改了 HTML:
<label>
<input type="radio" name="preview_source" value="email" checked>
<span id="id_preview_email_address_container" class="clickable">the person with address </span>
</label>
<span id="id_preview_email_address" class="editable">abc@123.com</span>
<i class="icon-pencil jeditable-activate clickable"></i>
我正在尝试使用 jQuery Jeditable 字段旁边的图标。这个想法是用户可以点击电子邮件地址本身或图标,文本将变得可编辑。 目前,如果您单击文本,电子邮件地址将变为可编辑状态,但如果您单击图标,则不可编辑。
<label>
<input type="radio" name="preview_source" value="email" checked>
<span id="id_preview_email_address_container" class="clickable" style="display: inline;">
the person
<span id="id_preview_email_address" class="editable">{{ preview_email }}</span>
<i class="icon-pencil jeditable-activate clickable"></i>
</span>
</label>
我正在使用以下函数来侦听铅笔图标的点击,这会在电子邮件地址文本上生成点击事件:
$('.jeditable-activate').click(function () {
$(this).parent().find('.editable').click();
// I know this is a bit clunky, but this is part of a large and
// complicated template system, so I can't easily simplify this
// selection without having to edit 20+ other files
});
我添加了一些 console.log() 来检查侦听器是否正常工作;我可以确认点击图标肯定会在电子邮件地址文本上生成 click() 事件——它只是没有给我输入字段。我试图修改一些建议的解决方案 here 但没有成功。我也尝试过通常的'wrap it in a $(document).ready()
'但是一次没有解决它!
关于 <label>
标签的一些事情意味着 jeditable 插件没有按预期工作。图标上的点击正在注册,文本正在进入输入字段,但 <label>
元素只是再次将其翻转回文本。不知道为什么点击文本本身有效。
为了解决这个问题,我像这样更改了 HTML:
<label>
<input type="radio" name="preview_source" value="email" checked>
<span id="id_preview_email_address_container" class="clickable">the person with address </span>
</label>
<span id="id_preview_email_address" class="editable">abc@123.com</span>
<i class="icon-pencil jeditable-activate clickable"></i>