select回显示--这个方法虽然可以传值给后台,但是分页需要点击两次,才能提交,作为弯路

这个html提供的是option value是 pojo里的属性,pojo的表示直接带属性的,不是通过left join要素表,因此自己想到的方法

改变name的属性值,用到的是

var inputE = jQuery("input[name='f_conditionStr']").attr("name", s)
这个jQuery方法可以改变name值,通过,通过 获取select标签的ID获得值,注入到
name="f_conditionStr
中,后台设个pojo得到值


上半部分是半成品,下面是主要的 ,这个是name传值查询

<script type="text/javascript">
<%-- $(document).ready(function(){
$("#f_type").change(function(){
var s=$("#f_type").val();
alert(s);

var inputE = jQuery("input[name='f_conditionStr']").attr("name", s);  


});

  }); --%>
 $(document).ready(function(){ 
 $("#btnFind").click(function(){
 
 var s=$("#f_type").val();
 var inputE = jQuery("input[name='f_conditionStr']").attr("name", s); 
 
 var v=$("#f_conditionStr").val();
  alert(v);
 var v2=$("#copy_f_conditionStr").val(v);
 alert(v2);
 })
 });

</script>



这个选的是回显

后台用两个方法,一个是进入页面查询,一个为条件查询,使用提交后,name=fttype,如果是请选择,则是空值,其他对应的value,后台要设置model返回对应的

factoryName
contacts
 fullName

这个时候要注意了,刚进入页面的时候 name=fttype,还是factoryname,contacts,fullname都是是空值,这样的话如果不判断的话,就不知道选项就比较乱

<c:if test="${ftype==null}">selected</c:if>selected>
 <c:if test="${ftype !=null && factoryName !=null && ftype==factoryName}">selected</c:if>
……

如果想看后台传入的是什么值,用

4<c:out value="${ftype}"></c:out>
这个标签,


内容回显

将内容的

 id="f_conditionStr
用jQuery传上去.

在回传,这里的name因为是变动的,而ID不变,可以得到value,再设置一个hidden<input>把name传到后台

,在回显到

 value="${copy_f_conditionStr }" size="30" id="f_conditionStr"


类型:
<select name="ftype" style="width:130px;heigh:30px;" dataType="下拉列表" dispName="查询条件" id="f_type"  " >
<option value="" <c:if test="${ftype==null}">selected</c:if>selected>
--请选择--
</option>
<option value='factoryName' <c:if test="${ftype !=null && factoryName !=null && ftype==factoryName}">selected</c:if>>简称 </option>
<option value='contacts'<c:if test="${ftype !=null && contacts !=null && ftype==contacts}">selected</c:if>>联系人</option>
<option value='fullName'<c:if test="${ftype !=null && fullName !=null && ftype==fullName}">selected</c:if>>全称</option>
</select>
<!-- 测试 -->
<c:if test="${ftype=='factoryName'}">${factoryName==null}</c:if>
1<c:out value="${contacts}"></c:out>
2<c:out value="${ftype==contacts}"></c:out>
3<c:out value="${ftype==''}"></c:out>	            	
4<c:out value="${ftype}"></c:out>

内容:
<input type="text" name="f_conditionStr" value="${copy_f_conditionStr }" size="30" id="f_conditionStr"
	onFocus="this.select();"
	onKeyDown="javascript:if(event.keyCode==13){ document.getElementById('btnFind').onclick(); }"
/>
<input id="copy_f_conditionStr" value="" name="copy_f_conditionStr" type="hidden"/> 
<input id="btnFind" type="submit"  value="查询" />
<input type="button" name="清空" value="清空" οnclick="findReset();this.blur();">
 
</div>

public class FactoryCController {
	@Autowired
	private IFactoryCService iFactoryCService;
	@RequestMapping("/basicinfo/factory/jFactoryList.action")
	public String tolist(Model model){
		List<FactoryC> list = iFactoryCService.selectfactoryall(null);
		model.addAttribute("datalist", list);
		return "/basicinfo/factory/jFactoryList";
		
	}
	@RequestMapping("/basicinfo/factory/FactoryList.action")
	public String tofind(Model model,FactoryC factoryC,String ftype,String copy_f_conditionStr){
		List<FactoryC> list = iFactoryCService.selectfactoryall(factoryC);
		model.addAttribute("ftype", ftype);
		model.addAttribute("factoryName", "factoryName");
		model.addAttribute("contacts", "contacts");
		model.addAttribute("fullName", "fullName");
		model.addAttribute("datalist", list);
		model.addAttribute("copy_f_conditionStr", copy_f_conditionStr);
		return "/basicinfo/factory/jFactoryList";
	}

分页时。设置js,因为有两次

 var s=$("#f_type").val();
 var inputE = jQuery("input[name='f_conditionStr']").attr("name", s); 
导致后去开始是空,下个才有值,有一条弯路

<script type="text/javascript">
/* $(document).ready(function(){
 var s=$("#f_type").val();
 var inputE = jQuery("input[name='f_conditionStr']").attr("name", s);  


}) */
window.οnlοad=function(){
   var s=$("#f_type").val();
 var inputE = jQuery("input[name='f_conditionStr']").attr("name", s);  
}
function search(){

 var s=$("#f_type").val();
 var inputE = jQuery("input[name='f_conditionStr']").attr("name", s);
 var v=$("#f_conditionStr").val();
 var v2=$("#copy_f_conditionStr").val(v);

}

</script>

做pojo自身的属性,及直接把selected的name传入后台,通过if判断,设值

,回传给前端



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值