3

嗨,我有点新JSP/Jquery/Javascript。我现在正在研究struts。在我的 jsp 文件中,我需要关注drop-down list页面的加载/每次加载页面时,我都是这样做的:

<script type="text/javascript">

    $(document).ready(function(){
        $("#fault").focus();
    });
</script>

然后在我的body,我使用html标签:

    <body onload="makeDisableEnable()">

    <s:form>
    <div class="list">
        <table>
            <colgroup>
                <col style="width: 120px;">
                <col style="width: 200px;">
                <col style="width: 120px;">
                <col>
                <col style="width: 120px;">
                <col>
            </colgroup>
            <tbody><tr>
            <th>DROPDOWN ONE<span class="font0">(※)</span></th>
                    <td><html:select property="failCnd" styleId="fault">
                    <html:option value=""></html:option>
                    <c:forEach var="failCnd" items="${failCndList}">
                    <html:option value="${failCnd.wideUseCd}">${f:h(failCnd.wideUseValueView)}</html:option>
                    </c:forEach>
                    </html:select>
                </td>

这就是我所做的,但它不起作用。谁能告诉我我做错了什么?或者还有什么其他方法。非常感谢你的帮助。

4

3 回答 3

1

如果您想坚持使用 html5,则有一个 autofocus 属性。

尝试:

<html:select property="failCnd" styleId="fault" autofocus="autofocus">

HTML 5 自动对焦

于 2013-01-03T02:09:11.753 回答
1

我认为问题在于<body onload="...">打破了 jQuery。

http://api.jquery.com/ready/

.ready() 方法通常与 <body onload="" > 属性不兼容。如果必须使用 load,请不要使用 .ready() 或使用 jQuery 的 .load() 方法将 load 事件处理程序附加到窗口或更具体的项目,如图像。

您可以直接makeDisableEnable()进入 jQuery“就绪”块:

<script type="text/javascript">
    $(document).ready(function(){
        $("#fault").focus();
        makeDisableEnable();
    });
</script>

我不知道是什么,所以如果它更有意义makeDisableEnable(),请随时移动它。$("#fault").focus();

于 2013-01-03T02:04:00.590 回答
1

试试下面的代码

 <script type="text/javascript">
     $(document).ready(function(){
        $("#fault").focus();
    });
 </script>

代码

 <body onload="makeDisableEnable()">

 <body>

检查这个工作小提琴

新编辑的小提琴

于 2013-01-03T04:55:50.687 回答