我有一个关于在 JSP 中使用三元运算符的查询。下面提到的代码使用 if else 语句,效果很好。
<%
if ("Y".equals(TestPerformed)) {%>
Test Performed <input type="checkbox" id="TestPerformed<%=RowCount%>" name="TestPerformed" value="Y" checked>
<%} else {%>
Test Performed <input type="checkbox" id="TestPerformed<%=RowCount%>" name="TestPerformed" >
<%}%>
<input type="text" id="HiddenTestPerformed<%=RowCount%>" name="TestPerformed" value="<%=TestPerformed%>"/>
<script>
$(function () {
$("#TestPerformed<%=RowCount%>").change(function () {
$("#HiddenTestPerformed<%=RowCount%>").val(($(this).is(':checked')) ? "Y" : "N");
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
但是当我使用三元运算符时,它会给我一个编译时错误,指出不是语句。
Test Performed <input type="checkbox" id="TestPerformed<%=RowCount%>" name="TestPerformed" value="Y" <%"Y".equals(TestPerformed) ? "checked":"";%>>
<input type="text" id="HiddenTestPerformed<%=RowCount%>" name="TestPerformed" value="<%=TestPerformed%>"/>
<script>
$(function () {
$("#TestPerformed<%=RowCount%>").change(function () {
$("#HiddenTestPerformed<%=RowCount%>").val(($(this).is(':checked')) ? "Y" : "N");
});
});
</script> …Run Code Online (Sandbox Code Playgroud)