我想检查文本框是否包含名称.如果没有,则在按下提交按钮后应弹出警告,显示消息,并且页面不应提交空白值.如果它包含值,则应提交该值.
我使用以下代码.当我将文本框留空并单击提交按钮时,它会按预期显示警报,但在解除警报后也会提交空值.
<html>
<head>
<script type="text/javascript">
function check()
{
if (!frm1.FileName.value)
{
alert ("Please Enter a File Name");
return (false);
}
return (true);
}
</script>
</head>
<body>
<form name="frm1" id="frm1" action="/cgi-bin/page.pl" method="POST">
<input type="text" name="FileName" id="FileName">
<input type="submit" value="send" name="btn_move" id="btn_move" onclick="check()">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
代码中有什么问题?
我试图计算各种事件的输入字段的值,而不管捕获的事件如何.
我正在考虑事件keypress keyup keydown cut paste事件(我忘了什么吗?).
我正在尝试确定文本输入INSERT模式是打开(默认 - 打开)还是关闭.我无法通过捕获该键的键事件来确定模式,但我不知道初始状态是什么.
有谁知道吗?优选地 - 包括IE8 +,Chrome和FF的跨浏览器解决方案.
任何解决方案,或者用Barney Stinson的话说,"骗局,骗局,喧嚣,蒙骗,开局,脆弱的火焰,战术和竹子"都可以帮助我.
提前致谢.
我被一些事件听众困住了.单击一个元素时,我想为点击创建另一个元素.出于某种原因,他们都在解雇.这是代码和jsbin:http://jsbin.com/uHIyiGi/2/edit HTML
<div class="wrap">
<button>Click me</button>
</div>
Run Code Online (Sandbox Code Playgroud)
JS
$('button').on('click', function(event){
$('body').append('<p>button clicked</p>');
$('.wrap').addClass('clicked');
$('body').on('click', '.clicked', function(e){
$('body').append('<p>.clicked clicked</p>');
$('.wrap').removeClass('clicked');
$('body').off('click', '.clicked');
});
});
Run Code Online (Sandbox Code Playgroud)
根据我对事件监听器的理解,第二个不应该触发,直到'.clicked'元素有一个完整的点击事件(鼠标向下和鼠标向上),但它在第一次点击时触发,这意味着事件被触发,即使在事件发生之前,元素没有触发器类.我看到每次成功删除事件监听器,但在我认为应该调用之前调用它.所以,我现在真的很困惑......有什么建议吗?我希望在不久的将来我会有一张脸.
我想在dropdownList中选择一个值时隐藏一些数据.
示例:
当我选择Gender = M时,我不想在我的标题中看到:Mr Only Miss或Madame.
这是我的代码:
@Html.DropDownListFor(m => m.Gender, new[] {
new SelectListItem() {Text = "M", Value = "M"},
new SelectListItem() {Text = "F", Value = "F"},
}, "---Choose Gender---", new { onchange = "Select();" })
@Html.DropDownListFor(m => m.Title, new[] {
new SelectListItem() {Text = "Mister", Value = "Mr."},
new SelectListItem() {Text = "Madame", Value = "Mme."},
new SelectListItem() {Text = "Miss", Value = "Miss."}
}, "---Choose Title---")
Run Code Online (Sandbox Code Playgroud)
在Javascript部分:
function Select() {
// the code.
}
Run Code Online (Sandbox Code Playgroud)
非常感谢!
我是js的新手..我有一个if条件,因为我不明白如果条件可以告诉我这条件是什么条件... Object.prototype.toString.call(currentFruit)==="[对象日期]" 你能解释一下......在下面提供我的代码
setcurrentFruit: function (fruitName, currentFruit) {
WorklistStorage.set(fruitName, currentFruit, false);
},
getcurrentFruit: function (fruitName) {
var currentFruit = unescapeJSON(WorklistStorage.get(fruitName, false));
if (currentFruit == "undefined" || typeof currentFruit == "undefined" || Object.prototype.toString.call(currentFruit) === "[object Date]") {
var date = new Date();
currentFruit = date.toString();
wholeQueue.setcurrentFruit(fruitName, currentFruit);
//console.log("poppppp");
}
currentFruit = new Date(currentFruit);
return currentFruit;
},
Run Code Online (Sandbox Code Playgroud) 我在Javascript代码中编写了2个函数,如下所示
Manager = FormManager.extend({
First: function () {
var response = this.Second("Feature"); //I'm able to get the alert
//I have added a click event handler
$('#element').on('click', function(){
var newResponse = this.Second("Bug"); //The alert is not poping
});
}
Second: function (type) {
alert(type);
//Performs certain operation
}
});
Run Code Online (Sandbox Code Playgroud)
错误:未捕获TypeError:对象#没有方法'秒'
我也尝试过不使用this关键字
Second("Bug") // Error: There is no method
Run Code Online (Sandbox Code Playgroud)
虽然这是我正在玩的程序的简化格式(按顺序显示一个简单的例子).我正在努力找出原因.
有人可以指引我走正确的道路吗?
为什么单击按钮会触发警报?它被分配给段落,而不是按钮.HTML:
<button onclick="foo()">Click me</button>
<p id="hidden" style="display:none"> I was hidden </p>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
function foo(){
document.getElementById("hidden").style.display = "block";
document.getElementById("hidden").onclick = innnerClick();
}
function innnerClick(){
alert("Ouch! That hurt!")
}
Run Code Online (Sandbox Code Playgroud) 这纯粹是出于调试目的.是否有一个单一的命令
addEventListener('*', myHandler)
Run Code Online (Sandbox Code Playgroud)
在本地的js或
$(document).on('*', myHandler)
Run Code Online (Sandbox Code Playgroud)
在jQuery中,无论什么类型或命名空间都会监听任何事件,并在事件发生时调用myHandler?
或者浏览器自己的开发工具中是否有东西可以让你看到所有的事件?
我的网页正在使用window.onerror捕获错误,而不是将错误发送到服务器进行日志记录.这很好用.但是,我停止在Chrome和Firefox控制台日志中看到错误.这使得调试应用程序变得更加困难.有没有什么方法可以继续使用window.onerror但是在控制台上看到错误日志而不是自己写在错误上?当Chrome将错误写入控制台时(如果未使用onerror),堆栈跟踪和导航到错误源非常有帮助.
我在这里看到了一些类似问题的帖子,但我似乎无法解决这个问题.基本上,我有一个AJAX文件上传器似乎没有调用progress事件.其他事件启动很好,文件上传完全符合我的预期,但是没有调用progress事件.javascript如下所示:
$('input[name=avatar_upload]').change(function(e) {
// Get the Form
var setupForm = $('#setup-member-form');
// Get the File Array
var file = document.getElementById('avatar-upload').files[0];
// Show the File Upload Progress
$('#avatar-upload-progress').show();
// Create a new Form Data Object
var formData = new FormData();
// Add the File
formData.append('avatar', file);
// Create the AJAX Object
var ajax = new XMLHttpRequest();
// Add the Event Listeners
ajax.addEventListener("loadstart", function(evt) {
// Do something in here...
$('#output').append("upload starting...\n");
}, false);
ajax.addEventListener("progress", function(evt) {
var percentLoaded = (evt.loaded / …Run Code Online (Sandbox Code Playgroud) javascript ×8
jquery ×6
ajax ×1
asp.net-mvc ×1
css ×1
events ×1
html ×1
keyboard ×1
onchange ×1