我有一个使用jQuery的函数
function enableField(fieldID) {
$("#" + fieldID).removeAttr('disabled').focus().select();
}
从HTML页面中的以下代码调用
<input id="phone_nr" name="phone"
type="text" size="30" value="12345"/>
<a href="javascript:void(0);"
onclick="enableField('phone_nr'); return false;">Change</a>
最初禁用输入字段。因此,对JS方法的调用再次启用它,然后将焦点放在字段上并选择内部文本进行编辑。
Internet Explorer(9)没有正确执行此操作(所有其他浏览器都这样做)。点击“更改”链接后,似乎没有任何事情发生。
答案 0 :(得分:1)
<input id="phone_nr" name="phone" type="text" size="30" value="12345"/>
<a href="#" id="mylink">Change</a>
删除了您的内嵌JavaScript并将其替换为此。
$(document).ready(function() {
$('#myLink').click(function(e) {
e.preventDefault();
$('#phone_nr').removeAttr('disabled').focus().select();
});
});
目前尚不清楚每个领域是否有“更改”链接,但如果你这样做......
<input id="field0" name="phone" type="text" size="30" value="12345"/>
<a href="#" id="mylink-0">Change</a>
<input id="field1" name="name" type="text" size="30" value="name"/>
<a href="#" id="mylink-1">Change</a>
<input id="field2" name="fax" type="text" size="30" value="12345"/>
<a href="#" id="mylink-2">Change</a>
$(document).ready(function() {
$('a[id|="mylink"]').each(function (i) {
$(this).click(function(e) {
e.preventDefault();
$('#field' + i).removeAttr('disabled').focus().select();
});
});
});
答案 1 :(得分:0)
尝试在document.ready事件中添加链接onclick处理程序:
$(document).ready(function () {
$("#mylink").click(function(){
$("#phone_nr").removeAttr('disabled').focus().select();
});
})
...
<a href="javascript:void(0);" id="mylink">Change</a>