2
我有一個樓層號的輸入框,我想禁用裏面的第一個字符。所以我用這個javascript:Javascript中的.jspx
<script type="text/javascript">
//<![CDATA[
$("#_floorNumber_id).on("keydown", function(e) {
if (($(this).get(0).selectionStart == 0 && (e.keyCode < 35 || e.keyCode > 40))
|| ($(this).get(0).selectionStart == 1 && e.keyCode == 8)) {
return false;
}
});
$("#_floorNumber_id").bind("contextmenu", function(e) {
e.preventDefault();
});
//]]>
</script>
但它好像腳本沒有被讀取。我試圖警惕它,但警報並未顯示。這是我的.jspx的樣子:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<div xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:field="urn:jsptagdir:/WEB-INF/tags/form/fields" xmlns:form="urn:jsptagdir:/WEB-INF/tags/form" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:spring="http://www.springframework.org/tags" version="2.0">
<jsp:directive.page contentType="text/html;charset=UTF-8"/>
<jsp:output omit-xml-declaration="yes"/>
<script type="text/javascript">
//<![CDATA[
$("#_floorNumber_id").on("keydown", function(e) {
if (($(this).get(0).selectionStart == 0 && (e.keyCode < 35 || e.keyCode > 40))
|| ($(this).get(0).selectionStart == 1 && e.keyCode == 8)) {
return false;
}
});
$("#_floorNumber_id").bind("contextmenu", function(e) {
e.preventDefault();
});
//]]>
</script>
<div id="wrapper">
<div class="container-fluid">
<div>
<ol class="breadcrumb">
<li class="disabled"><a>Floor</a></li>
<li><a href="/hms/floors?page=1&size=${empty param.size ? 10 : param.size}">List of Floors</a></li>
<li class="active"><span>Register Floor</span></li>
</ol>
</div>
<form:create id="fc_hms_domain_Floor" modelAttribute="floor" path="/floors" render="${empty dependencies}" >
<field:inputFloor field="floorNumber" id="c_hms_domain_Floor_floorNumber" max="30" min="3" required="true" value="${floor.floorNumber}"/>
<field:textarea field="description" id="c_hms_domain_Floor_description" required="true" />
<field:textarea field="floorComments" id="c_hms_domain_Floor_floorComments" required="true" />
</form:create>
<form:dependency dependencies="${dependencies}" id="d_hms_domain_Floor" render="${not empty dependencies}" />
</div>
</div>
</div>
我剛剛在JavaScript中使用.jspx。我希望有一個人可以幫助我。謝謝。
看起來你的腳本在你添加頁面上的元素之前運行。這就像在進入房間之前呼叫一個人的名字一樣。元素將不會被找到。要麼腳本需要在元素之後,你需要使用文檔準備好,或者窗口onload。 – epascarello
@epascarello我試過這個先生http://pastie.org/private/kulrs3syaswssygh6xuycq,它仍然不起作用。 –
well是輸入的id真的是'id =「_ floorNumber_id」'?我在代碼 – epascarello