JS怎么动态命名变量名
web JavaScript 2017-05-24 2705 0
关于本站

“最难不过坚持”

本人承接扒站仿站,php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

6402204 2611 39
最新评论
https://jueru.net/
评 留言
:weixiao:
评 留言
:shuijiao: :weiqu: :zhenbang: :leng:
评 留言
:yiwen: :yiwen: :yiwen: :yiwen:
评 EasySass: could not generate CSS file. See Output panel for details.
这个业务逻辑多少都有点奇怪了,阅读浏览次数增值在新闻详情页的控制器方法里setInc,这怎么还写进模型事件里了。如果非要用onAfterRead也可以,把新闻文章的内容单独分出来一个news_content表,然后把它和news做关联,然后给news_content表的onAfterRead事件做增值处理,这样点进新闻页内查询到文章内容时才会触发它。
评 TP6模型事件-查询后onAfterRead不好用
文章标签更多
ThinkPHP (254)
Mysql (58)
DedeCms (33)
jQuery (67)
证件照 (1)
setInc (4)
setDec (4)
onclick (5)
打开边栏(ESC) 关闭边栏(ESC)

js在获取表单name值时如何给name值加个变量?

1.用eval,例子:

<script>
var Thread_num=5;
for(var i=1;i<=Thread_num;i++){
eval("var set_" + i + "=" + i);
}
alert(set_5);
</script>
2.方法1占内存,建议用数组代替
<script>
var Thread_num=5;
var arr=[];
for(var i=1;i<=Thread_num;i++){
arr[i] = i;
}
</script>

3,应用实例:

程序实现功能,有一多列表格,每列里面放有多个下拉框,通过js实现,把每列的下拉框选中的值存储到input框中。

html代码:

<form name="frm1" method="post">
<input type="hidden" name="CONT_STEP0_STR" value="">
<input type="hidden" name="CONT_STEP1_STR" value="">
<table width="200" border="1" cellpadding="5" cellspacing="0">
<tr>
<td align="center">							  
  	<table border="0" width="70%" cellspacing="0" cellpadding="0">
	  <%for i=0 to 13%>
	  <tr>
		<td>
		<select name="CONT_STEP_0" onChange="javascript:sel_cont(0);">
			<option value="0" style="background-color:#B9FD6F">选择</option>
			<option value="1_1-1">1_1</option>
			<option value="2_2-2">2_2</option>
		  </select>
		  </td>
	  </tr>
	  <%next%>
	</table>
</td>
<td align="center">
	<table border="0" width="70%" cellspacing="0" cellpadding="0">
	  <%for i=0 to 13%>
	  <tr>
		<td>
		<select name="CONT_STEP_1" onChange="javascript:sel_cont(1);">
			<option value="0" style="background-color:#B9FD6F">选择</option>
			<option value="1_1-1">1_1</option>
			<option value="2_2-2">2_2</option>
		  </select>
		  </td>
	  </tr>
	  <%next%>
	</table>
</td>
</tr>
</table>
</form>
比较直观的js实现代码,应该是每列写一个js函数,多少列些多少个函数,如下:
function sel_cont(){
    var CONT_STEP0 = "";	
	for(i=0; i<14; i++){
		if(document.frm1.CONT_STEP_0[i].value != "0"){
			LOC = document.frm1.CONT_STEP_0[i].value.indexOf("-");		
			CONT_STEP0 = CONT_STEP0 + document.frm1.CONT_STEP_0[i].value.substr(0,LOC)+"/";		
		}
	}
	if(document.frm1.CONT_CNT_0[i].value != "0"){ 
		CONT_CNT0 = CONT_CNT0 + document.frm1.CONT_CNT_0[i].value+"/";
	}
}

js代码量比较少的方法是,采用动态变量,根据参数的不同,操作不同的元素,用到eval函数,如下:

function sel_cont(num){
    eval("var CONT_STEP"+ num +"=''");	
    for(i=0; i<14; i++){
	  if(eval("document.frm1.CONT_STEP_"+num+"[i].value") != "0"){
	    eval("var LOC = document.frm1.CONT_STEP_"+num+"[i].value.indexOf('-')");		
		eval("CONT_STEP"+num+" = CONT_STEP"+num+" + document.frm1.CONT_STEP_"+num+"[i].value.substr(0,LOC)+'/'");
      } 
    }
    eval("document.frm1.CONT_STEP"+num+"_STR.value = CONT_STEP"+num+".substr(0,CONT_STEP"+num+".length-1)");
}
用数组应该也能实现此案例,没有细研究。


版权声明:本篇文章来源于网络。 来源链接

相关推荐
return和return false的区别
JavaScript | 2020-08-26 18777
1. return返回null,起到中断方法执行的效果,只要不return false事件处理函数将会继续执行,表单将提交 2. return false,事件处理函数会取消事件,不再继续向下执行。比如表单将终止提交。 <script> function validateForm(){ var username...
console.log怎样输出换行
JavaScript | 2020-04-17 13615
两个console.log()之间默认是换行的,不用单独处理,如果想输出换行,可以用 console.log( '\n' ); 其他内容 如果同时打印数字和字符串,并且数字在前,打印字符串会添加引号显示。 console.log('test',1) ==》test 1 console.log(1,'test') ...
评论:0条
评论加载中...
发表评论