0

以下のコードには、必要な列にデータを格納するarray_push()コマンドがあります。

$studentInfo = array();

while ( $studentqrystmt->fetch() ) {

$studentData = array();
$studentData["StudentId"] = $dbStudentId;
$studentData["StudentDOB"] = $dbStudentDOB;
$studentData["StudentYear"] = $dbStudentYear;
$studentData["CourseNo"] = $dbCourseNo;
$studentData["CourseName"] = $dbCourseName;

array_push($studentInfo, $studentData);

以下のjqueryコードで実行しようとしているのは、テキスト入力IDを使用して、各列から目的のテキスト入力に必要なデータを格納することです。これで、以下のコードは、テキスト入力に保存されているDOBとYearに対して機能します。

    $('#studentsDrop').change( function(){

        var studentId = $(this).val();

                if (studentId !== '') {
    for (var i = 0, l = studentinfo.length; i < l; i++)
    {
            if (studentinfo[i].StudentId == studentId) { 

    var currentdob = $('#currentStudentDOB').val(studentinfo[i].StudentDOB);
    var currentyear = $('#currentStudentYear').val(studentinfo[i].StudentYear);


            break;       
        }

しかし、上記の関数に含めようとすると、以下の行は機能しません。

var currentcourse = $('#currentStudentCourse').val(studentinfo[i].CourseNo." - ".studentinfo[i].CourseName);

私がやろうとしていることの上の行では、CourseNoとCourseNameを1つのテキスト入力-に間に挟んで表示しています。しかし、これを行おうとすると、次のようなエラーが発生します。

SyntaxError:の後に名前がありません。オペレーター

エラーはそのコード行を指しています。私の質問は、CourseNoとCourseNameの両方を単一のテキスト入力に表示できるようにすることでエラーを修正するにはどうすればよい'#currentStudentCourse'ですか?

4

1 に答える 1

2

JavaScriptでは、+演算子を使用して文字列を連結する必要があります。

var currentcourse = $('#currentStudentCourse').val(studentinfo[i].CourseNo + " - " + studentinfo[i].CourseName);
于 2012-12-19T18:15:16.087 に答える