21,887
社区成员
发帖
与我相关
我的任务
分享
我们之前用的是js验证,给这些元素都添加相同的class,然后添加点击验证,只是不知道你这个是不是只验证数字,还是有别的验证
看了你的提交内容,显然是你点击一个按钮把整个list input 都提交过去了,其实这个是不合理的。根据你现在的情况,你可以这样处理:
里面有个member_id = 1000257015, 这个可能是你点击要提交验证的member id
在php里:
你可以$smarty->assign('need_valid_member_id',$_POST['member_id']);
然后把错误也assign过去:$smarty->assign('error_msg_point',$error_msg);
在tpl里:在循环selList的时候 判断
{if $selList[loop].member_id == $need_valid_member_id && $error_msg_point.point neq ""}
<div class="err_warn"><{$error_msg_point.point}></div>
{/if}
[quote=引用 77 楼 alice8023 的回复:]
Array ( [mode] => SETPOINT [snstabId] => 49 [webctrl_page_token] => dd4be4ef0d797d21eeee32267ccfe87d [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000257015 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => fdfds [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000257015 [1] => 1000257014 [2] => 1000256473 [3] => 1000255958 [4] => 1000255957 [5] => 1000255755 [6] => 1000255751 [7] => 1000255750 [8] => 1000255748 [9] => 1000255747 [10] => 1000199511 [11] => 1000031784 [12] => 1000031760 [13] => 1000031716 [14] => 1000031715 [15] => 1000031714 ) [1000257015_point] => fdfds [1000257014_point] => [1000256473_point] => [1000255958_point] => [1000255957_point] => [1000255755_point] => [1000255751_point] => [1000255750_point] => [1000255748_point] => [1000255747_point] => [1000199511_point] => [1000031784_point] => [1000031760_point] => [1000031716_point] => [1000031715_point] => [1000031714_point] => )
这是print_r($_POST);出来的结果
print_r($error_msg);出来的Array ( [point] => 付与ポイント数が正しくありません。 )
$smarty->assign('selList',$数组);
这是print_r($_POST);出来的结果 print_r($error_msg);出来的Array ( [point] => 付与ポイント数が正しくありません。 )Array ( [mode] => SETPOINT [snstabId] => 49 [webctrl_page_token] => dd4be4ef0d797d21eeee32267ccfe87d [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000257015 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => fdfds [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000257015 [1] => 1000257014 [2] => 1000256473 [3] => 1000255958 [4] => 1000255957 [5] => 1000255755 [6] => 1000255751 [7] => 1000255750 [8] => 1000255748 [9] => 1000255747 [10] => 1000199511 [11] => 1000031784 [12] => 1000031760 [13] => 1000031716 [14] => 1000031715 [15] => 1000031714 ) [1000257015_point] => fdfds [1000257014_point] => [1000256473_point] => [1000255958_point] => [1000255957_point] => [1000255755_point] => [1000255751_point] => [1000255750_point] => [1000255748_point] => [1000255747_point] => [1000199511_point] => [1000031784_point] => [1000031760_point] => [1000031716_point] => [1000031715_point] => [1000031714_point] => )
Array ( [mode] => SETPOINT [snstabId] => 49 [webctrl_page_token] => dd4be4ef0d797d21eeee32267ccfe87d [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000257015 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => fdfds [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000257015 [1] => 1000257014 [2] => 1000256473 [3] => 1000255958 [4] => 1000255957 [5] => 1000255755 [6] => 1000255751 [7] => 1000255750 [8] => 1000255748 [9] => 1000255747 [10] => 1000199511 [11] => 1000031784 [12] => 1000031760 [13] => 1000031716 [14] => 1000031715 [15] => 1000031714 ) [1000257015_point] => fdfds [1000257014_point] => [1000256473_point] => [1000255958_point] => [1000255957_point] => [1000255755_point] => [1000255751_point] => [1000255750_point] => [1000255748_point] => [1000255747_point] => [1000199511_point] => [1000031784_point] => [1000031760_point] => [1000031716_point] => [1000031715_point] => [1000031714_point] => )
这是print_r($_POST);出来的结果
print_r($error_msg);出来的Array ( [point] => 付与ポイント数が正しくありません。 )
你把你post过去的内容输入出来我看看,就是print_r($_POST); 打印出来看看,然后把报错信息也输出出来。 我现在不确定你的提交 是正个list所有的input 都一起提交,还是只提交你点击那个input框的按钮,这个要弄清楚。 如果报错,仅仅是个字符串,就把这个错传递给tpl,看看你提交过去的唯一id是什么,然后也传给tpl,在tpl里你就可以写 if($post_id == ..loop.id && $error_meg){ echo 错误}; $post_id 就是你提交过去的唯一id
你不是有 $smarty->assign(‘loop’, 数组); 吗? 提示信息要放到这个数组里
你不是有 $smarty->assign(‘loop’, 数组); 吗? 提示信息要放到这个数组里
只要在php里面的 function SETPOINT($dbh, &$smarty, &$request )这个函数里面加个相应的判断,把对应值传过去,然后返回到tpl的错误信息里。。这个函数是关键。。。我也是醉了。。 <input type="text" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:80px" value="" maxlength="5" id="1000257015_point" name="1000257015_point">这句是源代码里面的。然后格式都是1000257015_point 所以在tpl里面加了这句<{assign var="memberid" value=$selList[loop].member_id|cat:"_point"}> 要对1000257015_point这样的值进行判断。
你的 loop 是什么样的数组?好象你一直没说吧
<{section name=loop loop=$selList }> <tr align="center"> <td style="word-break: break-all; word-wrap:break-word;"><input type="checkbox" name="member_sel[]" value="<{$selList[loop].member_id}>"><input type="hidden" name="members[]" value="<{$selList[loop].member_id}>"></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].member_id}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].nickname}></td> <td style="word-break: break-all; word-wrap:break-word;"> <span style="clear:both; margin:0 auto; width:auto; display:inline-block; text-align: left;"> <{$selList[loop].community}> </span> </td> <td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_topic|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_pic|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"><input type="text" name="<{$selList[loop].member_id}>_point" id="<{$selList[loop].member_id}>_point"maxlength="5" value="" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:80px"><b><{t}>pt<{/t}></b> <input type="button" name="btn_<{$selList[loop].member_id}>_point" id="btn_<{$selList[loop].member_id}>_point" value="<{t}>付与する<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:setpoint(this.id)" onfocus="delWran"> <!--<{assign var="memberid" value=$selList[loop].member_id|cat:"_point"}> <{$memberid}> --> <{if $error_msg_point.point neq "" }><div class="err_warn"><{$error_msg_point.point}></div><{/if}> <!--<{if $error_msg_point.$memberid neq "" }><div class="err_warn"><{$error_msg_point.$memberid}></div><{/if}> --> </td> <td style="word-break: break-all; word-wrap:break-word;" align="center"><{$selList[loop].point|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].sex}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].age}></td> </tr> <{/section}>