0

FirefoxやInternetExplorerとの互換性に問題がある多くの入力タイプの日付を使用しているため、フィールドのプロパティを変更しようとしています。

また、入力タイプの日付を入力タイプのテキストに変更し、jquerydatepickerを追加するためのIDを追加したいと思います。

また、私はそのコードを実行しました:

   <script type="text/javascript" language="javascript">
    function changefield(){
        document.getElementsByTagNAme("date").innerHTML = "<input id=\"datepicker\" type=\"text\"  tabindex=\"2\" />";

    }
    chengefield()
</script>

また、動作しないようです。

コンソールにメッセージエラーはありません。

私の最大限の敬意をすべて受け取ります。

敬具。

SP

4

2 に答える 2

1
function changefield(){
    // getElementsByTagName return a collection of elements (like an array)
    var inputs = document.getElementsByTagName("input");

    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].type == 'date') {

            // change the input's type to text
            inputs[i].setAttribute('type', 'text');

            // id for each element must be unique
            inputs[i].setAttribute('id', 'datepicker' + i);

            inputs[i].setAttribute('tabindex', i+2);
        }
    }

}
于 2012-09-18T07:30:17.133 に答える
1

あなたが試しているのは、要素ではなく、入力タイプの日付を選択することだと思います。そして、jquery datepickerの追加について話しているので、jQueryを使用してみませんか?

$("input[type=date]").replaceWith("<input type='text' class='mydatepicker'/>");

その後

$(".mydatepicker").datepicker();

ただし、複数の要素に一致する可能性のある関数で「id」を使用しないでください。重複するIDが生成されるためです。代わりにクラスも使用してください。入力タイプを単純に変更しないのはなぜか疑問に思っている場合、IEはそれを許可しません。

于 2012-09-18T07:31:37.983 に答える