簡體   English   中英

Javascript textarea字數不啟用提交按鈕

[英]Javascript textarea word count not enabling submit button

我試圖使其成為當用戶在textarea中鍵入超過10個單詞時,啟用提交按鈕。 下面是我的代碼exerpt。 即使有10個以上的單詞,它也不會讓我提交。 任何幫助,將不勝感激。

            <?php
                    if($auth = 1)
                    {
                        echo "<center><h1>Write Article</h1><br /></center>";
                        echo "<form method=\"post\" action=\"processarticle.php\" id=\"myform\" >";
                        echo "<b>Keywords:</b> " . $array['keywords'];
                        echo "<br />";
                        echo "<b>Purpose:</b> " . $array['purpose'];
                        echo "<br />";
                        echo "<b>Style:</b> " . $array['style'];
                        echo "<br />";
                        echo "<b>Instructions:</b> " . $array['instructions'];
                        echo "<br />";
                        echo "<b>Length:</b> " . $array['length'];
                        echo "<br />";
                        echo "<hr>";
                        echo "<textarea rows=35 cols=85 name=\"content\">";
                        echo "</textarea>";
                        echo "<br />";
                        echo "<input type=\"hidden\" name=\"refferer\" value=\"1\" />";
                        echo "<input type=\"hidden\" name=\"articleid\" value=\"" . $arid . "\" />";
                        echo "<input type=\"hidden\" name=\"articletitle\" value=\"" . $articletitle . "\" />";
                        echo "<input type=\"submit\" value=\"Submit Article\" id=\"submit\" name=\"submit\" />";
                        echo "</form>";
                    }

                ?>
                <br /><br /><br />
                <!-- /main -->
                </div>


            <!-- content -->
            </div>

        <!-- /content-out -->
        </div>

        <!-- footer -->
        <?php include($_SERVER['DOCUMENT_ROOT'] . '/includes/footer.php'); ?>
        </body>
            <script type="text/javascript">
                $('#myform').submit(function(event) {
                    var text = $("#content").val();
                    text = text.split(" ");
                    // check for at least 10 words
                    if(text.length < 10){
                        // prevent submit
                        event.preventDefault();
                        return false;
                    }
                });
            </script>

您已使用#content但未為文本區域定義任何id 定義ID並訪問它。 添加這樣的id屬性,

echo "<textarea rows=35 cols=85 name=\"content\" id=\"content\">";

您沒有將內容定義為Id ..聲明#content為文本區域的id ..

"<textarea rows=35 cols=85 name=\"content\" id=\"content\">";

//找到單詞計數..

String input = $('content').val();
String[] elements = input.split(" ");

if(elements.length>10){
//your code
}

由於這是表單上的監聽器,並且textarea具有名稱,因此您可以將textarea的值讀取為:

    var text = this.content.value;

    text = text.split(" ");

    // check for at least 10 words
    if(text.length < 10){

這實際上只會檢查是否有10個空格,如果你想檢查看起來更像是單詞的東西,那么查找單詞字符串:

    var words = text.match(/\b\w+\b/g);

然后將分裂為單詞字符串;

    if (words && words.length < 10) { 
        ...
var text = encodeURIComponent($("#content").val());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM