2

我正在尝试设置Add Question按钮功能,但我的开始很糟糕。我收到一条错误消息:

类型错误:form.questionText 未定义

我究竟做错了什么?

    <script type="text/javascript">
        function insertQuestion(form) {

            var questionarea = (form.questionText.length) ? form.questionText[0] : form.questionText;

        }


    </script>

<table id="question">
<tr>
    <td>Question:</td> 
    <td>
        <textarea class="questionTextArea" id="mainTextarea" rows="5" cols="40" name="questionText"></textarea>
    </td>
</tr>
</table>


    <form id="QandA" action="insertQuestion.php" method="post">
        <table id="questionBtn" align="center">
            <tr>
                <th>
                    <input id="addQuestionBtn" name="addQuestion" type="button" value="Add Question"
                    onClick="insertQuestion(this.form)" />
                </th>
            </tr>
        </table>
        </div>
        <hr/>
        <table id="qandatbl" align="center" cellpadding="0" cellspacing="0" border="0">
            <thead>
                <tr>
                    <th width="13%" class="question">Question</th>
                </tr>
            </thead>
        </table>
        <div id="qandatbl_onthefly_container">
            <table id="qandatbl_onthefly" align="center" cellpadding="0" cellspacing="0"
            border="0">
                <tbody></tbody>
            </table>
        </div>
    </form>
4

2 回答 2

0

你还没有定义questionText,所以它会给出undefined错误

更新 1:然后您必须在form提交按钮所在的位置添加您的 questionText:

<textarea class="questionTextArea" id="mainTextarea" rows="5" cols="40" name="questionText"></textarea>
于 2013-01-25T05:22:37.017 回答
0

questionText元素不在<form>. 把它移到表格里面!更好的是,由于您使用的是 jQuery,因此有一种更简洁的方法可以做到这一点。摆脱您拥有的 JS 并html 之后添加:

$("#addQuestionBtn").on('click', function (e) {
   var questionarea = $("[name=questionText]").val();

   e.preventDefault();
});
于 2013-01-25T05:28:20.947 回答