У меня есть страница, на которой я «заправляю» таблицу, в которой в каждой строке есть переключатель с одинаковым именем. Каждая строка динамически генерируется с помощью 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. Пожалуйста, помогите, спасибо.