文章标签 ‘javascript’
转载时请标明文章原始出处和作者信息, 作者: lostsnow.http://www.lsproc.com/blog/ajax_char_lose/
采用Ajax传递数据时,通常会将数据整理为data="var1=abc&var2=def"。而当数据中存在加号(+)或是连接符(&)时,服务器端接收数据时会有部分数据丢失现象。分析一下Ajax传递数据的格式与Javascript的语法不难发现:
1. "+"号:JavaScript解析为字符串连接符,所以服务器端接收数据时"+"会丢失。
2. "&":JavaScript解析为变量连接符,所以服务器端接收数据时&符号以后的数据都会丢失。
解决办法也相当简单,只需要为+与&符号编码即可:
function vchar(str) {
str = str.replace(/\+/g, "%2B");
str = str.replace(/\&/g, "%26");
return str;
}
var1 = "abc+kef";
var2 = "abc&kef";
var1 = vchar(var1);
var2 = vchar(var2);
alert(var1);
alert(var2);
使用jquery的话可以使用如下方式提交
var params = $('input, textarea').serialize();
$.ajax({
type: 'post',
url: 'xxxx.php',
[...]
转载时请标明文章原始出处和作者信息, 作者: lostsnow.http://www.lsproc.com/blog/limit_textarea_length_by_js/
From: http://www.phpcake.cn/archives/26/
<script type="text/javascript">
function ismaxlength(obj){
var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
if (obj.getAttribute && obj.value.length>mlength)
obj.value=obj.value.substring(0,mlength)
}
</script>
<textarea maxlength="10" onkeyup="return ismaxlength(this)"></textarea>
-- EOF --
转载时请标明文章原始出处和作者信息, 作者: lostsnow.http://www.lsproc.com/blog/auto_resize_images/
resizeimg.js
window.onload = function() {
for (var index = 0; index < document.images.length; index++) {
var widthRestriction = 400;
var heightRestriction = 400;
var rate = document.images[index].width / document.images[index].height;
[...]
