bs的modal事件 show.bs.modal?
- 这个事件只是监控 模态框的弹出, 它本身并不显示模态框,所以在a或button标签中,还是要写 data-toogle=... data-target=...
- 这个事件 发生的时间点: 是在 调用了 modal('show')方法后, (此时模态框并不马上显示), 而模态框显示出来之前!
- 它的主要作用是: 在模态框显示出来之前, 进行模态框中一些显示内容的设置 或 改变!
$('#logModal').on('show.bs.modal', function(e){
var button = $(e.relatedTarget); //获取到触发模态框的按钮
var btext = button.text();
var bid = button.attr('id');
var modal = $(this);
modal.find('.modal-title').text(btext);
modal.find('.modal-body input#who').val(bid);
alert($('.modal-body input#who').val()); // 这个将在模态框显示出来之前 先alert弹出
});
js中定义变量加var和不加var 的区别?
-
如果不加var,在函数内部被认为是一个 (隐式声明) 的全局变量, 加var则认为是一个(显式声明) 的局部变量, 所以很明显, 最好是加上var(这也说明,能运行的程序不一定就是好的/合适的代码)
-
js中,一个变量如果没有被声明, 直接引用它会报错:ReferenceError, 但是没有声明却可以 直接赋值,这时被认为是隐式声明
-
js是一种解释型语言,就是说执行前不会事先编译, 如果某行有错, 不会事先报错. 而是边解释边执行, 只有执行到错误的行时,才会报错!
mysql如何引用字段的值?
MariaDB [pxxj]> update pj_jsr set account=concat(pinyn, floor(1000+9990*rand()));
- 一个字段引用另一个字段 的值时, 是所有 记录行的 每一个对应引用
- mysql中,如果是数字相加, 用加号+, 但是如果是字符串"相加"连接, 用concat
- 而且 concat可以连接字符串和数字, 数字不要用 引号
关于tp的ajaxReturn返回?
- 以后统一的用 tp/controller的ajaxReturn, 不用echo了. 因为 ajaxReturn($data) 支持返回的数据可以是: 数字123, 字符串'abc', 数组和对象. 返回客户端时会根据不同的返回格式
(即ajax的dataType)进行编码后传输. - 默认的tp以json格式返回数据: 'default_ajax_return' => 'ajax'
- 如果tp后端用json格式返回, 不管是数组还是对象, 在前台都可以用点语法访问返回的data.
============================================================
在tp的模板标签中, 不管是第一层,还是在嵌套的标签中,给name属性赋值时,要使用变量(或 数组变量的元素)时, 都不要加 $ 或 {$...}
符号, 直接写 变量或变量的元素名就可以了,比如:
<present name="cp">
({$cp.curyear}some text, <eq name="cp.cursem" value="a">some text one<else/>some text two</eq>) /* 这里的eq标签中的name就不要写成$cp.cursem 或 {$cp.cursem} 了
<else/>
(some text three)
</present>
</small>
关于jqury中的缺省参数和false函数?
- jquery中函数的缺省参数跟其他语言的不同, 像C/C++中后面的缺省参数存在时, 前面的缺省参数必须写, 而jq不必要.
- 在 jq的回调函数, 如果是只是返回 false的函数, 像这样
function(){return false;}
的, 可以只用一个false 来代替, 比如:$('form').on('submit', false);
dom元素和jquery对象?
$('form')是对象, 而对象的元素[0]就是dom元素.
reset()是表单dom的方法, 而$('form')对象是没有reset()方法的
注意, 在模态框modal中 的表单, 当模态框关闭后, 模态框中的表单就不存在了, 这时候,再引用表单对象的话,就会出错, 会报错 TypeError 类型错误, 即$('form')是undefined的
===============================================
vim中 代码折叠后, 所有 的折叠代码被看作是一行, 这时dXj, yX 等操作都把这些折叠代码当作一行来操作.
在js-- firebug中调试时, 调试"指针"(绿色带)指向的代码行, 并不表示这一行代码一定要执行, 而是表示 "即将"执行这一行代码, 如果这一行有条件判断, 则只有当条件为true时才执行这一行代码,如果条件为false时则不会执行这一行代码,将跳到下一语句.
if, switch, while等是一条语句, 因为如果if等条件为false时,将跳过整个代码段, 跳过大括号里的所有内容.
=================
modal模态框的结构:
div.modal > div.modal-dialog > div.modal-content > (div.modal-header + div.modal-body + div.modal-footer)
$.ajax({
// 设置脚本编码: scriptCharset: utf-8;
url: "",
type: "post",
contentType: "application/json; charset=utf-8", // 直接说明内容类型
data: $("#handle-form").serialize();, // 传入表单数据
dataType: "json",
success: function (data) {
}