preventDefault() 不适用于 div onclick,我尝试了 preventDefault 和 stopImmediatePropagation 也没有任何效果,请参阅下面的示例。
<title></title>
<script src="scripts/jquery-1.5.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$().ready(function () {
$("div").click(function (e) {
e.preventDefault();
//e.stopImmediatePropagation();
return false;
});
//$("div").bind("click", function (e) { e.stopImmediatePropagation(); return false; });
});
</script>
Run Code Online (Sandbox Code Playgroud)
<div onclick="alert('1');">
Sample text
</div>
Run Code Online (Sandbox Code Playgroud)
我正在尝试绑定两个提交事件,并阻止第二个事件.
例:
$('form').submit(function(event){
alert(1);
//if some condition cut the submit events
event.preventDefault();
return false;
});
$('form').submit(function(){
alert(2);
return false;
});
Run Code Online (Sandbox Code Playgroud)
我使用 Telerik Grid 看到了这行代码:
columns.Bound(o => o.URI).Width(10).Sortable(false)
.ClientTemplate("<A class='btnGrid' id=source<#= ID #> onclick=GridSelection.addItem('<#= ID #>') >Add</A>").Title("").Width(50);
Run Code Online (Sandbox Code Playgroud)
GridSelection addItem和disableSelected函数的JS代码:
GridSelection = {
addItem: function (value) {
var anchorOption = $("a[id=source" + value + "]");
anchorOption.click(function (e) { // variable name changed from "event"
e.preventDefault();
return false; // as suggested by mr. Hamdi
});
anchorOption.fadeTo("slow", .5);
GridSelection.disableSelected(anchorOption, true);
var data = $("#GridSource").data('tGrid').data;
var selectedObject;
for (var item in data) {
if (data[item].ID == value) {
selectedObject = data[item];
break;
}
}
var …Run Code Online (Sandbox Code Playgroud) 我有一个表单,在提交时,通过通常的e.preventDefault()并发送一个ajax请求.但是,如果此ajax请求返回某个条件,我希望正常提交表单.我该如何实现这一目标?
// Submit handler
$(".reserveer_form").submit(function(event){
event.preventDefault();
$.ajax({
url: $(this).attr("action"),
data: $(this).serialize(),
success: function(data) {
if($(".messagered",data).length > 0){
var errors = $(".messagered",data);
$(".gegevens").before(errors);
} else {
// SUBMIT THE FORM!
}
}
});
})
Run Code Online (Sandbox Code Playgroud) 我知道关于这个问题已经有很多问题,但是我已经阅读了很多这些问题但仍然无法使我的脚本工作......
我有一个非常基本的幻灯片,可以在这里看到:www.screations.net/wm(有3个幻灯片,我在所有3个幻灯片上都有同样的问题)
这是我用于导航的代码:
<a href="#"><img src="images/arrow_right.png" class="nextSlide" onclick="nextSlide();"/></a>
<a href="#"><img src="images/arrow_left.png" class="prevSlide" onclick="prevSlide();"/></a>
Run Code Online (Sandbox Code Playgroud)
和jQuery(简化):
function nextSlide()
{
$('.slide').eq(0).fadeIn(fadeSpeed);
event.preventDefault();
}
function prevSlide()
{
$('.slide').eq(0).fadeOut(fadeSpeed);
event.preventDefault();
}
Run Code Online (Sandbox Code Playgroud)
现在这在Chrome上工作正常,但在Firefox/IE上,虽然脚本仍然有效,但它会重新加载页面.我该如何解决这个问题?:/
谢谢
我试过了sweeAlert插件,它运行得很好,但是在确认后我无法弄清楚如何做默认的东西.
$(document).ready(function () {
function handleDelete(e){
e.preventDefault();
swal({
title: "Are you sure?",
text: "You will not be able to recover the delaer again!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete!",
closeOnConfirm: false
},
function (isConfirm) {
if (isConfirm) {
return true;
}
});
};
});
Run Code Online (Sandbox Code Playgroud)
和按钮
<a href="{plink delete! $row->id_dealers}" class="delete" onclick"handleDelete(event);"> </a>
//{plink delete! $row->id_dealers} Nette -> calls php delete handler
Run Code Online (Sandbox Code Playgroud)
我也试过unbind(),off()而不是return false,没有工作.早些时候,我曾经confirm()用return true和return false …
我有一堆动态创建并添加到div的表单.每个表单的id也是动态创建的 - ids总是不同的,但它们都以......开头.
updateFRM_
Run Code Online (Sandbox Code Playgroud)
我不能让preventDefault()方法的工作 - 我不知道如果是这样的问题,或者语法不正确以致js的失败和重新加载.
为动态生成和动态命名的表单设置侦听器的正确语法是什么?
$( "#updater" ).on( "submit", "form[id^='updateFRM_']", function(e)
{
e.preventDefault();
Run Code Online (Sandbox Code Playgroud)
谢谢你的时间和帮助
我正在使用此脚本滚动到一个锚点:
$( document ).ready(function(e)
{
var $root = $('html, body');
$('a').click(function(e) {
e.preventDefault();
var href = $.attr(this, 'href');
if(href!=='javascript:void(0)' && href!=='javascript:void(0);'){
$root.animate({
scrollTop: $(href).offset().top-100
}, 1000, function (e) {
e.preventDefault();
window.location.hash = href;
});
return false;
}
});
});
Run Code Online (Sandbox Code Playgroud)
但是,在单击链接(并且动画完成)后,出现以下错误两次: Uncaught TypeError: Cannot read property 'preventDefault' of undefined
我不明白为什么。我试图将e加到函数中,但它仍然给出错误。有人可以提供一些背景信息吗?
我有一个表单(通过codeigniter制作),我想用ajax onClick提交.表单提交没有Ajax并且不允许我这样做event.preventDefault();
jQuery文件
$('#register_submit').click(function(e){//
e.preventDefault();
var first_name = $('#register_form1').val();
$.ajax({
type: "POST",
async: false,
url: base_url+"register/registration_val",
data: "register_first_name="+first_name,
success: function(data){
$('#inferiz').html(data);
},
error: function(){alert('error');}
});
});
Run Code Online (Sandbox Code Playgroud)
//控制器工作正常.名称寄存器,我POST的功能是registration_val
HTML文件
<form method="POST" action='<?php echo site_url('/register/registration_val'); ?>' id='register_form' >
<input type="login" name="register_first_name" id="register_form1">
<input type='submit' value="Register" id='register_submit'>
</form>
Run Code Online (Sandbox Code Playgroud)
问题是,当我点击SUBMIT按钮时,jQuery不会完成它的工作,而是表单将自己提交给控制器并发出错误消息.
我无法阻止表单提交(我认为可以解决问题),Click事件完全被忽略.提前致谢
我有一个应用程序,你可以创建元素,即文本元素,并将其附加到div
然后您还可以添加该元素的链接.
但我不能禁用div中的链接(不删除attr.但只是禁用它)
我在寻找这样的东西:
$('#container a').click(function() {
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
要禁用div.Container中的所有链接?可能吗?
jquery ×10
preventdefault ×10
javascript ×5
ajax ×1
codeigniter ×1
dynamic ×1
firefox ×1
form-submit ×1
forms ×1
html ×1
offset ×1
return ×1
scroll ×1
submit ×1
sweetalert ×1
telerik-grid ×1