我想做的是; -禁用右箭头,直到我开始输入 -当我单击以对文本框中的单词进行计数并且图像变为左箭头时 -当我单击重新启动进度的左箭头时。
现在它并没有真正显示结果,只是显示了一秒钟并更改了图像,但是自动重新启动了所有内容,并且始终启用了向右箭头按钮。
bbar: {
xtype: 'pagingtoolbar',
doRefresh: function () {
console.log('Overriding refresh action');
Ext.getStore('myStore').load({
params: { // add custom params to existing params
customParam: 'customValue'
}
});
return false; // cancel load
}
}
$(document).ready(function() {
$("input").click(function() {
var words = $.trim($("textarea").val()).split(" ");
document.getElementById("resultDiv").innerHTML = words.length;
});
});
答案 0 :(得分:0)
您已将表单配置为执行GET
请求。当您单击input type="image"
元素时,表单的Submit事件将触发并执行对页面的GET请求。由于没有用于这些请求的处理程序代码,因此您的页面有效地经历了“刷新”。
为防止此行为,请从触发的event
事件中捕获click
对象,并将其用于回调函数中的preventDefault()
:
$(document).ready(function() {
$("input").click(function(e) {
e.preventDefault();
var words = $.trim($("textarea").val()).split(" ");
document.getElementById("resultDiv").innerHTML = words.length;
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="wordcounter">
<form action="" method="get" name="frm" onSubmit="TextCount();">
<!--Text Area-->
<textarea id="mytext"></textarea><br/>
<!--Image Flipped Here-->
<input type="image" id="submit" src="imgs/arrow_button_metal_green_right_T.png" alt="Submit" onclick="document.getElementById('submit').src='imgs/arrow_button_metal_green_left_T.png'">
<br/>
<!--Result-->
<div id="resultDiv">0</div> Characters
</form>
</div>
答案 1 :(得分:0)
如果用户使用制表符或其他内容,最好使用焦点而不是单击。
$(document).ready(function() {
$('input').blur(function () {
$('#submit').attr("disabled", "disabled");
});
$("input").focus(function () {
$('#submit').prop('disabled', false);
var words = $.trim($("textarea").val()).split(" ");
$("#resultDiv").innerHTML = words.length;
});
$("#submit").click(function(){
var imageSource = $(this).attr('src');
if(imageSource == "imgs/arrow_button_metal_green_left_T.png"){
$(this).attr("src","imgs/arrow_button_metal_green_right_T.png");
}else{
$(this).attr("src","imgs/arrow_button_metal_green_left_T.png");
}
});
});
使用jQuery,您可以更轻松地获得resultDiv。