我创建了这个书签来突出显示页面上的用户名和密码框。我可以更改框的颜色,但如果我尝试更改框中的文本,则不起作用:
<a href="javascript:void(var boxes= $(':text, :password');var selectionBox = $(':password');selectionBox.val('password');for(var i = 0; i < boxes.length;i++){if(boxes[i] == selectionBox[0]){boxes.eq(i-1).val('login');}})">Password box highlighter</a>
我尝试过 .text = ''
、.value = ''
和 .val('')
。
谢谢。
最佳答案
将要执行的代码包装到函数调用中:
<a href="javascript:void(function(){var boxes= $(':text, :password');var selectionBox = $(':password');selectionBox.val('password');for(var i = 0; i < boxes.length;i++){if(boxes[i] == selectionBox[0]){boxes.eq(i-1).val('login');}}}())">Password box highlighter</a>
说明:void 需要一个表达式(只有 1 个表达式)。
An expression is any valid unit of code that resolves to a value
您的代码已经因第一个 var 关键字而中断,因为声明变量不是表达式。
当您将代码包装到函数调用中时,表达式就是函数调用本身,无论函数内部将执行哪些代码。
关于javascript - 小书签不更改文本框中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17269966/