0
使用Calling Jquery within/inside a Shadowbox(感謝Rob Grzyb和kannan!)的回答,我可以從我的Drupal站點上的Shadowbox中觸發jQuery,但是,我是無法獲得它的一部分功能:jQuery .val()在Shadowbox中不起作用
我在我的Shadowbox中有一個表單,並且我使用.val()來確定select字段的值(並且爲了測試目的,在警示框)。當我點擊'提交'按鈕並且警報觸發時,即使我選擇了不同的值(如綠色),警報也會讀取第一個值(紅色)。在常規頁面上,它按預期工作,並且警報讀取正確的值。
示例代碼:
<div class="color-form" style="display: none;">
<h3>What's Your Favorite Color?</h3>
<form class="color">
<select name="colorurl" class="colorurl">
<option value="red">Red</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
</select>
<br />
<input class="button" type="submit" value="Submit">
</form>
<script type="text/javascript">
jQuery(document).ready(function($){
$('body').on('click', '.color .button', function(e) {
e.preventDefault();
var colorurl = $('.colorurl').val();
alert(colorurl);
});
});
</script>
</div>
<script type="text/javascript">
jQuery(document).ready(function($){
$('a.form').click(function() {
var thisContent = $('.color-form').html();
Shadowbox.open({
content: thisContent,
player: 'html',
displayNav: false,
height: 350,
width: 350
});
});
});
</script>
<a class="form">Link to Form</a>
我怎麼能修改此代碼,以便它工作在太極拳?謝謝!
感謝傑森!這聽起來像是發生了什麼。但是,添加'.wrap('
')'實際上會停止Shadowbox的工作,並且我得到一個「沒有方法'換行'」的javascript錯誤。我正在檢查出http://stackoverflow.com/questions/11534717/error-object-has-no-method-wrap,但不知道如何才能與我的代碼一起工作。將發佈,如果我得到它的工作。 – areikiera@areikiera我編輯了我的答案。 'html()'返回一個沒有'wrap()'方法的字符串。 –
它看起來像div.color-form的內容加載在Shadowbox HTML中,但不是div.color-form本身,所以我認爲這會讓你的解決方案無法工作。 – areikiera