SQL參數格式 例如:select * from tb where nd=:nd and yd=:yd
想一次性把所有SQL語句中參數(帶冒號)全部換成數據,
開始
選定用正則表達式。
原先寫這樣
復制代碼代碼如下:
strsql.replace(/(:/w+)/g,(“$1”).substring(1));
"$1" 總是本解析成字符串,而不是匹配的值
換成
復制代碼代碼如下:
strsql.replace(/(:/w+)/g,$1);
又不能給出匹配值,$1 要想得到匹配值必須要帶雙引號。
后突發奇想加了個方法
把$1 當成參數傳遞,如下
復制代碼代碼如下:
var strsql = strsql.replace(/(:/w+)/g, function ($1) { var b = $1; return $("#" + b.substring(1)).val(); });
解決了