基于工作中遇到的一些问题,总结一下经验:
单双引号的区别
大家都知道 php 里双引号可以解析变量,单引号不可以,其实换行符等特殊情况也需要双引号处理。
$aWhiteIP = explode('\n', $sWhiteIP);
结果是:
array(1) { [0]=> string(24) "192.168.0.1 192.168.0.2" }
改成双引号才可以正确解析。
$aWhiteIP = explode("\n", $sWhiteIP);
结果是:
array(2) { [0]=> string(12) "192.168.0.1 " [1]=> string(11) "192.168.0.2" }
如果是逗号等作为分隔符,单双引号都一样,但是使用函数的参数最好用双引号。
Textarea的写法
如图,显示是这样子,我还以为 textarea 自带首行缩进,想用css关闭,其实是因为html里多了换行。
<textarea type="text" name="whiteip" style="resize:none;" >
<?php echo $aParams['whiteip']; ?>
</textarea>
改成这样就好了。
<textarea type="text" name="whiteip" style="resize:none;" ><?php echo $aParams['whiteip']; ?>
</textarea>
IE的placeholder之坑
做一个联想搜索框,在input里加了placeholder。
<input type="text" placeholder="请选择考试产品" name="examstr" autocomplete="off"
style="text-align:center;width:300px;" >
Chrome下是正常的。 单击出现选择框: 选中后赋值: IE下就比较奇怪。 单击出现选择框:
选中后却无法赋值,而且选择框也没了,感觉像是点了两下,先点了空白处: 我花了好长时间才发现是placeholder的问题,因为Chrome单击第一下出现指针和选择框,IE是出现指针,同时把提示文字隐藏掉。查了下是因为IE本来不支持placeholder,后来为了兼容留的坑,无法正常触发事件。
|