编辑:我认为问题是由this造成的。
我有一个带有很长内容列表的jQuery对话框。我在某些行的左侧有一个标记。
窗口顶部有一个文本框,下面是行和行的内容。当您向下滚动(因此无法看到文本框)并单击位于每行上的锚标记时,它会将焦点更改为文本框,并且不允许您单击标记。它甚至不会为标签调用函数。
我知道这个功能有效,因为顶部的行(当文本框可见时)会触发正确的功能并正确地完成所有操作。
我不知道从哪一个开始,因为这是我看到的一个非常奇怪的问题。
我会附加一些示例,但窗口是通过Ajax加载的,所以它完全是动态的。
编辑:对话框:(因为它是通过另一个功能生成的,所以很难看)
<div class="ui-dialog-content ui-widget-content" id="edit-dialog" >
<p class="validateTips">
All form fields are required.
</p>
<form id="edit-form" action="<redacted>.aspx">
<fieldset>
<legend>Edit:</legend>
<label for="perm">Permission Title</label>
<input name="perm" class="text ui-widget-content ui-corner-all" id="editpermname" type="text" />
<label for="hasdrop">Has Options</label>
<input name="hasdrop" class="text ui-widget-content ui-corner-all" id="edit-hasoptions" type="checkbox" />
<br />
<br />
<div id="edit-perm-options">
<div id="div-9">
Option 1: <input name="current-option-name-9" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-11">
Option 2: <input name="current-option-name-11" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-13">
Option 3: <input name="current-option-name-13" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-3">
Option 4: <input name="current-option-name-3" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-4">
Option 5: <input name="current-option-name-4" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-5">
Option 6: <input name="current-option-name-5" type="text" value="Le<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-6">
Option 7: <input name="current-option-name-6" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-7">
Option 8: <input name="current-option-name-7" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-2">
Option 9: <input name="current-option-name-2" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-12">
Option 10: <input name="current-option-name-12" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-1">
Option 11: <input name="current-option-name-1" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-8">
Option 12: <input name="current-option-name-8" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-14">
Option 13: <input name="current-option-name-14" type="text" value="test" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
<div id="div-10">
Option 14: <input name="current-option-name-10" type="text" value="<redacted>" /><a title="Delete option" href="javascript:void(0)"><span class="ui-icon ui-icon-closethick" style="margin-right: 5px; float: left;"></span></a><br /><br />
</div>
</div>
</fieldset>
</form>
</div
删除行的jQuery:
$("#edit-perm-options").on("click", "a", function () {
$(this).parent().remove();
});
答案 0 :(得分:0)
仔细检查锚标记的href属性。尝试将值设置为“javascript:void(0);”而不是“#”以避免移动屏幕
<a href="javascript:void(0);" />something</a>