Javascript Bookmarklet不更改文本框中的文本
我创建了这个书签来突出显示页面上的用户名和密码框。我可以更改框的颜色,但如果我尝试更改框中的文本,则无效:Javascript Bookmarklet不更改文本框中的文本,javascript,jquery,bookmarklet,Javascript,Jquery,Bookmarklet,我创建了这个书签来突出显示页面上的用户名和密码框。我可以更改框的颜色,但如果我尝试更改框中的文本,则无效: <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]){
<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个表达式)
由于声明变量不是表达式,因此代码已与第一个var关键字中断
当您将代码包装到函数调用中时,表达式就是函数调用本身,无论在函数内部执行哪种代码