我正在使用带有ASP.NET MVC5的Kendo UI Dropdownlist。 我想在选择上写一个cookie:
public class AuthService extends Service {
private String account;
private String pwd;
private String url;
private String webView;
private boolean isProcess = false;
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
url = (String) intent.getExtras().get("url");
account = (String) intent.getExtras().get("account");
pwd = (String) intent.getExtras().get("pwd");
webView = new WebView(this);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
//todo Do whatever u want to do.
closeServiceAndProcess();
}
@Override
public void onReceivedHttpAuthRequest(final WebView view, final HttpAuthHandler handler, final String host, String realm) {
if (!isProcess) {
isProcess = true;
handler.proceed(account, pwd);
} else {
isProcess = false;
closeServiceAndProcess();
}
}
});
webView.loadUrl(url);
return Service.START_REDELIVER_INTENT;
}
private void closeServiceAndProcess() {
stopSelf();
android.os.Process.killProcess(android.os.Process.myPid());
}
}
所有功能都可以访问并且工作正常。但我得到了:
未定义
值而不是Id。 为什么我收到此错误?我该如何解决?
P.S。模型包含Id和Name。
答案 0 :(得分:2)
获得dataItem后, 是用于填充DropDownList的模型实例。
因此,为了访问Id字段,请使用Id字段而不是值字段(您的模型没有)。
function onSelect(e) {
if ("sss" in window) {
debugger;
var dataItem = this.dataItem(e.item);
alert(dataItem.Id);
setCookie(dataItem.Id);
}
}