我在Internet Explorer上遇到了一个奇怪的错误(目前版本为8,但与7有相同的问题).点击以下链接时:
<a href="#">Hello</a>
Run Code Online (Sandbox Code Playgroud)
无论如何,页面都完全重新加载.
但是这样的链接:
<a>Hello</a>
Run Code Online (Sandbox Code Playgroud)
将正常工作,而不是重新加载整个页面.
IE中是否存在某种可能导致此功能发生变化的设置?
信息:我已将安全设置设置为低,并已禁用所有插件以及"启用第三方插件 "选项.
任何建议都有帮助,谢谢.
编辑:这是我正在测试的
<a href="#" id="btnAddStuff" runat="server" onclick="displayAddStuff();" style="cursor:pointer;">
<asp:Literal ID="litAddStuff" runat="server" Text="Add Stuff" /></a>
Run Code Online (Sandbox Code Playgroud)
编辑#2:我已经用多个版本的IE测试了这个.干净的安装它可以正常工作.但是,在具有不同设置的随机用户计算机上进行测试会导致问题.
编辑#3:感谢您对如何使此代码更好的回复.虽然我很欣赏,但我的问题是,如果有人知道Internet Explorer中是否存在可配置的设置,这些设置会导致浏览器以不同的方式运行上述代码?
为什么onclick方法没有返回false就无法工作.当我尝试使用它而不返回false它显示答案然后值消失..
<form id="form1" method="POST">
<table style="border:1px solid black">
<tr>
<td>First Number</td>
<td>
<input type="text" id="first">
</td>
</tr>
<tr>
<td>Second Number</td>
<td>
<input type="text" id="second">
</td>
</tr>
<tr>
<td>Result</td>
<td>
<input type="text" id="result">
</td>
</tr>
<td>
<button id="btn" value="Add" onClick="addNumbers();return false;">Add</button>
</td>
</table>
</form>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
function addNumbers() {
var firstNumber = document.getElementById('first').value;
var secondNumber = document.getElementById('second').value;
document.getElementById('result').value = firstNumber + secondNumber;
}
Run Code Online (Sandbox Code Playgroud)
在下面的代码中,
<!DOCTYPE html>
<html>
<head>
<title>Hide odd rows</title>
<meta charset="UTF-8">
</head>
<body>
<div style="background-color:#8F9779;width:200px;height:30px;">
</div>
<hr style="width:200px" align="left">
<table border="1" >
<tr class="hide" >
<td width="40" height="20">row 1</td>
</tr>
<tr>
<td width="40" height="20">row 2</td>
</tr>
<tr class="hide">
<td width="40" height="20">row 3</td>
</tr>
<tr>
<td width="40" height="20">row 4</td>
</tr>
<tr class="hide">
<td width="40" height="20">row 5</td>
</tr>
</table><br>
<button type="button" name="HideRows">Hide Odd Rows</button>
<script type="text/javascript" src="hideOddRows.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
/* hideOddRows.js */
document.querySelector('[name=HideRows]').onclick = hideRows;
function hideRows(){
var elements = document.getElementsByClassName('hide');
elements.forEach(function(element){
element.style.visibility …Run Code Online (Sandbox Code Playgroud) 我在我的HTML中使用它:
<a href="#" onclick="preload('12345');return false;">Click</a>
Run Code Online (Sandbox Code Playgroud)
它在外部js文件上调用函数preload()并且到目前为止工作正常.
但我有几十个这样的链接,并希望删除那些"返回false"并只将一个直接放在pres() - 函数的js文件中.
但它总会被忽略?!"return false"真的只能在onclick ="..."中使用吗?
当用户单击删除按钮时,如何添加 JavaScript 警报以确认(是或否)?我尝试向警报添加一个类:
<?php
//$con = mysqli_connect("localhost", "root", "root", "db");
$sql = "SELECT * FROM `uploads` where userId = " . $_SESSION['user'];
$qry = mysqli_query($conn,$sql) or die(mysqli_error($conn));
$table_content = "";
while($row = mysqli_fetch_assoc($qry)){
$id = $row['id'];
$name = $row['name'];
$table_content .= "<tr>
<td>
<a href='listen.php?id=$id' target='_new'>$name </a>
</td>
<td>
<a href='delete.php?id=$id' type='button' class='btn btn-danger'>delete</a>
</td>
</tr>";
}
echo "<table>".$table_content."</table>";
?>
Run Code Online (Sandbox Code Playgroud) 我正在尝试将纯 JSON 字符串定义为 Javascript 函数中的参数。
下面是我想定义它的方式:
<a href="#" onclick="js_func('arg_1', 'arg_2', '{"key": "value"}'); return false">Link</a>
Run Code Online (Sandbox Code Playgroud)
Firebug 给我一个错误警报:未终止的字符串文字,即使我转义了 JSON 字符串上的双引号。
我该如何解决这个问题?
谢谢。
请考虑以下HTML元素中的Javascript属性示例:
<input type="button" onclick="somceFunc()" />
<input type="button" onclick="somceFunc();" />
<input type="button" onclick="somceFunc(); return false;" />
Run Code Online (Sandbox Code Playgroud)
什么时候应该someFunc()用分号结束呼叫,什么时候应该消除分号?此外,何时应该通过调用结束属性return false;?
谢谢.
我有一个清除列表的按钮,单击此按钮会显示一个要求验证的对话框(是/否).我想要的是清除列表后禁用"清除"按钮(单击是).这是我的代码:
$('#clearBtn').click(function() {
$('#alert5').show();
$('#bg').show();
$('#Yes').click(function(){
$('.list1').empty();
$('#clearBtn').disable(true);
$('#clearBtn').click(function(e){
e.preventDefault();
});
$(".alert").fadeOut(250);
$(".alertbg").fadeOut(250);
});
});
Run Code Online (Sandbox Code Playgroud)
preventDefault()函数似乎不起作用.
我正在使用PrimeFaces p:menuitem组件执行删除.为了添加确认步骤,我使用了onclick显示JavaScript确认对话框的事件.在我的代码下面:
<p:menuitem icon="fa fa-fw fa-remove"
title="#{message.global_remove}"
value="#{message.global_remove}"
actionListener="#{componentListMB.delete(cp.id)}"
onclick="return confirm('#{message.component_list_confirm_deletion}')"
update=":component_list" />
Run Code Online (Sandbox Code Playgroud)
当用户确认删除时,不会触发该操作,而是#在URL的末尾添加a .
为什么在p:commandButton一切正常的情况下不会触发事件?
我正在使用:
我有这个代码:
<td onclick="Test()">
<img src="test.jpg" onclick="Test2(); return false;"><br>
Rest of the cell with some text.
</td>
Run Code Online (Sandbox Code Playgroud)
当我单击图像时,也会触发Test(),因为我也在单击表格单元格.如何证明这一点?如果我单击图像,我想要test2()触发,如果我单击表格单元格中的其他位置,则应该触发test().
编辑:即使返回false,Test()仍然被触发(在Chrome中测试)!
我在一个执行回发的页面上有一个LinkButton,但也有一个onClientClick事件.我们的想法是在后台设置一些会话变量来自客户端数据(不要问).
我在Web方法中设置了一个断点来逐步执行代码,我们遇到的是,根据浏览器的不同,PageMethods可能会返回成功消息,失败消息或根本没有消息.此外,无论PageMethods结果如何,都可以调用或不调用Web方法.
这是一个方便的结果小图表:
Browser PageMethods WebMethod
-------------- ------------- --------------------
IE 8, 9, 10 Success Called successfully
Safari 5.1.7 Failure *Never called*
Firefox 25.0.1 *Neither* Called successfully
Chrome v31 Failure Called successfully
Run Code Online (Sandbox Code Playgroud)
这是四种不同的浏览器,以及四种不同的结果.
我已经尝试在服务器端和客户端代码中生成具有相同效果的链接按钮,甚至没有在WebMethod中设置会话变量,结果相同.
可以使用以下简单代码重现代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script type="text/javascript">
function doStuff() {
var a = 'a';
var b = 'b';
PageMethods.doStuffWebMethod(a, b, doStuffSuccess, doStuffFail);
}
function doStuffSuccess() {
alert(Success!');
}
function doStuffFail() {
alert(Failure!');
}
</script>
<html>
<body style="background-color:#f3f4f6;" >
<form …Run Code Online (Sandbox Code Playgroud)