用block實現兩個頁面間的傳值,block實現兩個頁面
第二個view聲明一個block屬性:
@property (nonatomic, copy) void(^doTransferMsg)(NSString *_msg);
然後傳值方法裡檢查block是不是存在
- (IBAction)transferText:(UIButton *)sender {
if (_doTransferMsg) {
_doTransferMsg(@"hello there");
_doTransferMsg = nil;
}
[self.navigationController popViewControllerAnimated:YES];
}
主View裡,建立第二個view的時候,順便實現這個block
- (IBAction)LoadDetailView:(UIButton *)sender {
[ibTextLabel setText:nil];
DetailViewController *_curDetail = [[DetailViewController alloc] initWithNibName:@"DetailViewController"
bundle:nil];
[_curDetail setDoTransferMsg:^(NSString *_msg) {
dispatch_async(dispatch_get_main_queue(), ^{
[ibTextLabel setText:_msg];
});
}];
[self.navigationController pushViewController:_curDetail
animated:YES];
[_curDetail release];
}
that’s all
兩個頁面之間的JavaScript傳值
-----直接用jsp傳就行了-----
a頁面需要帶參數傳遞
b.jsp?a_name=${a_name}
b頁面中
<%
String b_name= request.getParameter("a_name");
%>
標籤中 value=<%=b_name %>
兩個頁面之間傳值
用window.open()
父頁面:
var child=window.open("child.aspx","child","height=200,width=400,status=yes,toolbar=no,menubar=no,location=no");
<input type="hidden" name="hdvalue" id="hdvalue">
子頁面:
window.opener.document.getElementById("hdvalue").value=“value”;
關閉頁面的時候調用上面的js