如何發送jQuery中的變量到回調函數?函數(r)的{}如何發送jQuery中的變量到回調函數?函數(r){}
雖然在演示中,請注意上面菜單的形式可以被序列化。另請注意,點擊某個項目上的文件夾圖標時(單擊左側的某個類別),然後以這種方式提交表單,則無法對其進行序列化。
我有一個變量,我需要傳遞給回調函數,如果這就是它的名稱;到函數(r){}代碼部分。
下面是在標題上方工作的代碼。
<?php $moveablecats = mysql_query("SELECT * FROM categories WHERE id != '1' "); ?><form id="changecategoryForm2"><select id="newflex" name="thecatidichose"> <option value=""></option> <?php while($catrow =mysql_fetch_array($moveablecats)){ ?> <option value="<?php echo "$catrow[id]"; ?>"><?php echo "$catrow[title]"; ?> </option><?php } ?></select> </form> <p><tt id="results"></tt></p>
<script>
function showValues() {
var str = $("form#changecategoryForm2").serialize();
$("#results").text(str);
}
$(":checkbox, :radio").click(showValues);
$("select").change(showValues);
showValues();
</script>
下面是不起作用的代碼。我正在使用[jquery警報對話框插件] [2]。 忽略註釋掉的行。 當腳本提醒序列化表單時,它是空白的,所以它不起作用。然而它設法顯示itemid和類別變量。
$(".changecategory").click(function() {
<?php $moveablecats = mysql_query("SELECT * FROM categories WHERE id != '1' "); ?>
var categoryid = $(this).attr("categoryid");
var itemid = $(this).attr("itemid");
var itemid2 = $(this).attr("itemid");
var itemtitle = $(this).attr("itemtitle");
var parenttag = $(this).parent().get(0).tagName;
var removediv = "itemid_" +itemid;
jAlert(
'Which category do you want to move <b>'+itemtitle+ '</b> to?<br><?php $moveablecats = mysql_query("SELECT * FROM categories WHERE id != '1' "); ?><form id="changecategoryForm"><select id="newflex" name="thecatidichose"> <option value=""></option> <?php while($catrow =mysql_fetch_array($moveablecats)){ ?> <option value="<?php echo "$catrow[id]"; ?>"><?php echo "$catrow[title]"; ?> </option><?php } ?></select> </form> <p><tt id="results"></tt></p>','Change category', function(r) {
// $(parenttag).fadeOut('slow');
$("#"+removediv).fadeOut('slow');
//var newflex = $("#newflex").val();
//alert(newflex);
alert($("#changecategoryForm").serialize());
//alert('categoryid ' + categoryid + ' itemid ' + itemid + '.');
//var dataString = $("#changecategoryForm").serialize();
/*
//remember to add validation for blank fields
$("#loading4").show();
$("#loading4").fadeIn(400).html('<img src="loading.gif">');
var newrow = "134";
$.ajax({
type: "POST",
url: "formcontrols.php",
data: dataString,
cache: false,
success: function(html){
$("#creation4").after(html);
$("#loading4").hide();
//$("#newrow").before($('itembeforehere'));
}
});
*/
//
return false;
jAlert(''+ itemtitle +' has been successfully moved.', 'Success');
}
);
});
你能澄清你的問題嗎?理想情況下創建一個很簡單的例子,你想做什麼?以目前的形式回答這個問題是非常困難的。 – 2010-05-11 12:11:18
你有兩種形式,changecategoryForm2和changecategoryForm,或者是一個錯字? – 2010-05-11 12:38:41
我有2種形式。 1窗體是屏幕頂部的窗體。另一個,你會看到當你註冊到網站,選擇一個類別在左邊,然後單擊一個文件夾圖標。 – desbest 2010-05-11 21:11:29