我有這樣的一個jsp一個div:如何將jQuery添加到從ajax調用加載的html中?
<div id="response" class="response">
<h3>Connected as user : Tony</h3>
<p>You selected the procedure : <B>lg_resultsretrieval</B></p>
<div class="showbiz">
<label>Enter procedure input variables : </label></div>
<div class="actual-input">
<label>Parameter1: </label><textarea name='text1' id='text1' class='txtarea' rows='1' cols='50'>starttime - timestamp without time zone</textarea><br>
<label>Parameter2: </label><textarea name='text2' id='text2' class='txtarea' rows='1' cols='50'>endtime - timestamp without time zone</textarea><br>
<label>Parameter3: </label><textarea name='text3' id='text3' class='txtarea' rows='1' cols='50'>in_sourceindicator - integer</textarea><br>
<label>Parameter4: </label><textarea name='text4' id='text4' class='txtarea' rows='1' cols='50'>keyword - character varying</textarea><br>
</div>
</div>
我寫了一個jQuery函數的文字區域的:
<div id="response" class="response"></div>
這個div,使一個AJAX調用一個servlet後,作爲附加如下:
//submits only when the textbox value is valid
$("#response").on("change", function() {
$("#Execute").click(function() {
if ($(".txtarea").val() == this.defaultValue)
{
alert("Please insert a valid value");
return false;
}
});
$("txtarea")
.focus(function() {
if (this.value === this.defaultValue) {
console.log('inside focus function');
this.value = '';
}
})
.blur(function() {
if (this.value === '') {
this.value = this.defaultValue;
}
});
});
問題是,上面的代碼不雖然jquery的文檔中工作,它表示對函數用於動態加載的Elemen TS。我如何使它工作?請建議
1)不存在與元素的id'Execute' 2)沒有標籤'txtarea'的元素 – Justinas
DIVS沒有變化事件。 – epascarello
@epascarello:儘管如此,'change'事件似乎傳播到子元素的'div'元素。在這種情況下'textarea'元素。也許這是特定於瀏覽器的行爲?值得測試,我想。 – David