这是my code。 一切正常,所以如果我在文本框外面单击它会回到默认大小,但是如果我点击提交按钮它也会回到正常大小并且不提交数据。有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
你必须注释掉这一行:
$("#sbutton_block").slideUp("fast");
并且在action属性中你必须将一个php页面名称写入Post变量。
这是您修改后的代码。 http://pastebin.com/LR4HyHv6
希望它有所帮助。
答案 1 :(得分:1)
首先你的代码不起作用,因为on blur函数会在按钮上单击事件之前触发 所以我换成了这个
<强> HTML 强>
<form method="post" action="" onsubmit="return false;">
<div id="vsetko">
<textarea id="scontent"></textarea>
<div id="sbutton_block" style="display:none;">
<input type="submit" id="sbutton" value=" Share " />
</div>
</div>
</form>
<强> CSS 强>
#scontent {
overflow: auto;
width:722px;
height:30px;
border:solid 2px #006699;
font-size:14px;
}
#sbutton{
background-color:#006699;
color:#ffffff;
font-size:13px;
font-weight:bold;
padding:4px;
margin-bottom: 5px;
}
<强> JQUERY 强>
$(document).ready(function(){
$("#scontent").focus(function(){
$(this).animate({"height": "85px",}, "fast" );
$("#sbutton_block").slideDown("fast");
return false;
});
$("html").click(function(event){
if ($(event.target).attr("id") != "scontent") {
$("#scontent").animate({"height": "30px",}, "fast" );
$("#sbutton_block").slideUp("fast");
return false;
}
});
$("#scontent").keypress(function(){
var MaxLen = 250;
return ($(this).val().length <= MaxLen);
});
$("#sbutton").click(function(){
// do your stuff
return false;
});
});
所以整个html点击事件将取代焦点事件,然后你可以做保存数据
我在笔记本电脑上测试它工作正常
编辑: 我修改了html点击功能来检查要跳过的元素