0

次のJavaスクリプト関数があります

<script type="text/javascript">
          function taskDone(taskID) {

              alert(taskID);

              var btn = document.getElementById('btn-taskDone-' + taskID);
              var icon = document.getElementById('task-icon-' + taskID);

              btn.style.color = '#8F9199';
              btn.onclick = "";
              btn.style.cursor = 'default';
              icon.src = "./../Images/Icons/doneTask.png";                  

              '<%=setDone(123)%>'

          }

</script>

および次のコード ビハインド メソッド

 public Boolean setDone(int taskID)
    {
        BO.taskDao myTask = new BO.taskDao();
        Boolean success = myTask.setDone(1, taskID);
        return success;
    }

javascript関数からsetDoneメソッドを呼び出し、123の代わりにtaskIDを渡したいのですが、今はその方法がわかりません。そして、ページがロードされたときに、taskDone「JavaScript」関数を呼び出さずに、サーバーがスクリプト「<%=setDone(123)%>」のこの行を自動的に実行する理由がわかりませんでした

4

2 に答える 2

1

などのすべてのサーバー インライン コード<%=setDone(123)%>は、ページの生成中に実行されます。JavaScript での位置は、単にそこに配置したためです。

このように、インライン コードを使用してサーバー側のデータJavaScript に渡すことができます。

JavaScript でサーバー側のコードを実行する場合は、いくつかの手法を使用できます。mattyTommo で説明されている WebMethods と同様に、入力ボックスに値を入力し、サーバー側のボタンのボタン クリックを呼び出して、サーバー側のコードに入力ボックスの内容を読み取らせることができます。

于 2013-10-02T10:52:49.557 に答える