完全新手 因为有一些页面的要求所以才接触了javascript这块
我后台有一个boolean属性
想要达到的效果是 跳转进入这个页面之后
如果该属性为真 则submit按钮显示“已关注”并且呈现不可被按下状
如果该属性为假 则submit按钮显示“关注”并且呈现自然状网上查到一些相关的情况 但都是要在按下按钮后在onclick里头加入js函数被调用的 而且也不知道怎么控制value 以及如何与后台联系起来
我想要的是通过某action(我用的是ssh框架) 进入该页面 然后对这个submit的按钮进行样式的控制
谢谢
我后台有一个boolean属性
想要达到的效果是 跳转进入这个页面之后
如果该属性为真 则submit按钮显示“已关注”并且呈现不可被按下状
如果该属性为假 则submit按钮显示“关注”并且呈现自然状网上查到一些相关的情况 但都是要在按下按钮后在onclick里头加入js函数被调用的 而且也不知道怎么控制value 以及如何与后台联系起来
我想要的是通过某action(我用的是ssh框架) 进入该页面 然后对这个submit的按钮进行样式的控制
谢谢
<script>
获取值
设置样式
</script>放在页面的最下面看看对你有帮助没?
if(<%=request.getAttribute("boleans")%>){
按钮对象.className = 以关注样式;
}else{
按钮对象.className = 关注样式;
}
</script>
或者你可以直接在页面上写两个按钮让后根据你的后台Attribute属性 选择输出哪个
request是后台的一个属性么? 我用的ssh2框架里头基本没出现这个东西...
那个关注样式 。。 是以怎样的方式写的?还有选择输出是怎么选择?以及这样两个按钮的位置是不一样的吧?
<script>
if(<%=request.getAttribute("boleans")%>){
按钮对象.value= 以关注;
}else{
按钮对象.value= 关注;
}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script>
function change(){
var a = true; //这个值可以是你从后台获得的参数
var btn = document.getElementById("btn1");
if(a){
btn.value="以关注";
btn.disabled = true;
}
}
</script>
</HEAD><BODY>
<input type="button" id="btn1" value="关注">
<input type="button" id="btn2" value="测试" onclick="change()">
</BODY>
</HTML>
假设action中有属性boolean flag = true;
request.setAttribute("flag",flag );2.在jsp页面中如果可以使用EL表达式:
<input type="submit" id="btn2"
<c:choose><c:when test="${flag eq true}" >value="已关注" disabled="disabled"〈/when〉
<c:others>value="关注"</others></c:choose> />3.在jsp页面还可以这样设置:
首先设一个隐藏域:<input type="hidden" id="backValue" value="<%=request.getAttribute("flag")%>">
在onload里处理js函数changeState();来控制submit的样式:
function changeState(){
var flag = document.getElementById("backValue").value;
if(flag == true){
document.getElementById("btn2").value= "已关注";
document.getElementById("btn2").disabled = true;}
}
谢谢 我试了一下 的确有效果 但...效果是在按下btn2之后 btn1会有变化 原先是希望一载入页面就能判断的
我试了下第二个 用c标签做选择 恩有用的 一跳到这个页面就会根据后台的参数选择按钮的显示了 谢谢^^
就是有一个影响 原先我是用s标签<s:form action="add-follow">
<input type="submit" id="btn1" value="关注">
</s:form>
现在改成了<s:form action="add-follow">
<c:choose>
<c:when test="${isFollow eq true}">
<input type="submit" id="btn2" value="已关注" disabled="disabled">
</c:when>
<c:otherwise>
<input type="submit" id="btn1" value="关注" onclick="change()">
</c:otherwise>
</c:choose>
</s:form>
影响就是按下“关注”按钮 他并没有跳转到那个action
这...咋办
在整个form末尾加了个按钮
<s:form action="add-follow">
<c:choose>
<c:when test="${isFollow eq true}">
<input type="submit" id="btn2" value="已关注" disabled="disabled">
</c:when>
<c:otherwise>
<input type="submit" id="btn1" value="关注内" onclick="change()">
</c:otherwise>
</c:choose>
<br>
<input type="submit" id="btn1" value="关注外" onclick="change()">
</s:form>
按下“关注外“则能进入那个action 并且由于onclick的缘故”关注内“会变成”已关注“ 但是只有一刹那 之后还是会还原”关注内“
按下”关注内“则不能进入那个action 只是会永久的变成”已关注“