Ajaxed Javascript код неактивен - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть страница, на которой я «заправляю» таблицу, в которой в каждой строке есть переключатель с одинаковым именем. Каждая строка динамически генерируется с помощью forest JSTL, но для простоты я удалил ее здесь. По сути, следующее вводится на другой странице через ajax, ооо ... Я использую jquery 1.8

 <script type="text/javascript">
 $(document).ready(function(){
        if (!$("input[@name='student']:checked").val()) {
            alert('Nothing is checked!');
            return false;
        }
        else {
            alert('One of the radio buttons is checked!');
        }       
 });           
</script>
<table id="studentTable" border="1" style="width: 100%;">
      <tr><th>Select</th></tr>  
      <tr><td><input type="radio" name="student" value="${s.id}"/></td></tr>
</table>

Итак, после вызова ajax, используя firebug, мой скрипт находится на странице вместе со всеми остальными табличными вещами. Дело в том, что JavaScript, пришедший через AJAX, кажется неактивным. Я видел, как некоторые люди предлагали использовать функцию «eval».

Может кто-нибудь предложить несколько советов в этом отношении, спасибо.

EDIT

Это сценарий, который я использую для добавления вышеупомянутого на моей странице.

      function search() {
          var resultNode = dojo.byId("results");
          dojo.xhrPost({
              url: "${searchstudentsurl}",
              form: dojo.byId("searchform"),
              load: function(newContent) {
                  dojo.style(resultNode,"display","block");
                  resultNode.innerHTML = newContent;
              },
              error: function() {
                  resultNode.innerHTML = "Your student search form could not be sent";
              }
          });
}

Теперь у dojo есть опция «handleAs», но если я укажу опцию handleAs: «html», пост просто не удастся из-за этой строки. Я не уверен, как использовать функцию dojo eval. Пожалуйста, помогите, спасибо.

1 Ответ

0 голосов
/ 01 сентября 2011

Событие готовности документа инициируется только для загрузки главной страницы, но не для вызовов AJAX.Разработайте логику Javascript так, чтобы она лежала вне HTML и загружалась в файл .js с главной страницей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...